ಪ್ರಾಜೆಕ್ಟ್ 3: ಮಾಡಬೇಕಾದ ಕೆಲಸಗಳ ಪಟ್ಟಿ (To-Do List)
ಈ ಪ್ರಾಜೆಕ್ಟ್ನಲ್ಲಿ, ನಾವು ಒಂದು ಸರಳ ಕಮಾಂಡ್-ಲೈನ್ To-Do List ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ನಿರ್ಮಿಸುತ್ತೇವೆ. ಬಳಕೆದಾರರು ತಮ್ಮ ಮಾಡಬೇಕಾದ ಕೆಲಸಗಳನ್ನು (tasks) ಸೇರಿಸಬಹುದು, ಪಟ್ಟಿಯನ್ನು ವೀಕ್ಷಿಸಬಹುದು, ಮತ್ತು ಪೂರ್ಣಗೊಂಡ ಕೆಲಸಗಳನ್ನು ತೆಗೆದುಹಾಕಬಹುದು.
ಕಲಿಕೆಯ ಪರಿಕಲ್ಪನೆಗಳು
- ಲಿಸ್ಟ್ಗಳು (Lists) - ಕೆಲಸಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು.
- ಫಂಕ್ಷನ್ಗಳು - ಕೋಡ್ ಅನ್ನು ಸಂಘಟಿಸಲು.
whileಲೂಪ್ - ಅಪ್ಲಿಕೇಶನ್ ಚಾಲನೆಯಲ್ಲಿಡಲು.- ಬಳಕೆದಾರರಿಂದ ಇನ್ಪುಟ್ ಪಡೆಯುವುದು.
enumerate()ಫಂಕ್ಷನ್ - ಲಿಸ್ಟ್ ಐಟಂಗಳನ್ನು ಅವುಗಳ ಇಂಡೆಕ್ಸ್ನೊಂದಿಗೆ ಪ್ರದರ್ಶಿಸಲು.- ಫೈಲ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ (ಸರಳ
open,read,write) - ಪಟ್ಟಿಯನ್ನು ಉಳಿಸಲು (persistence).
ಕೋಡ್
def display_tasks(tasks):
"""ಮಾಡಬೇಕಾದ ಕೆಲಸಗಳ ಪಟ್ಟಿಯನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತದೆ."""
if not tasks:
print("ನಿಮ್ಮ To-Do ಪಟ್ಟಿ ಖಾಲಿಯಾಗಿದೆ!")
else:
print("--- ನಿಮ್ಮ ಕೆಲಸಗಳು ---")
for index, task in enumerate(tasks, start=1):
print(f"{index}. {task}")
print("--------------------")
def add_task(tasks):
"""ಪಟ್ಟಿಗೆ ಹೊಸ ಕೆಲಸವನ್ನು ಸೇರಿಸುತ್ತದೆ."""
task = input("ಸೇರಿಸಬೇಕಾದ ಕೆಲಸವನ್ನು ನಮೂದಿಸಿ: ")
tasks.append(task)
print(f"'{task}' ಅನ್ನು ಪಟ್ಟಿಗೆ ಸೇರಿಸಲಾಗಿದೆ.")
def remove_task(tasks):
"""ಪಟ್ಟಿಯಿಂದ ಒಂದು ಕೆಲಸವನ್ನು ತೆಗೆದುಹಾಕುತ್ತದೆ."""
display_tasks(tasks)
if not tasks:
return
try:
task_num_str = input("ತೆಗೆದುಹಾಕಬೇಕಾದ ಕೆಲಸದ ಸಂಖ್ಯೆಯನ್ನು ನಮೂದಿಸಿ: ")
task_num = int(task_num_str)
if 1 <= task_num <= len(tasks):
removed_task = tasks.pop(task_num - 1)
print(f"'{removed_task}' ಅನ್ನು ಪಟ್ಟಿಯಿಂದ ತೆಗೆದುಹಾಕಲಾಗಿದೆ.")
else:
print("ತಪ್ಪಾದ ಸಂಖ್ಯೆ. ದಯವಿಟ್ಟು ಪಟ್ಟಿಯಲ್ಲಿರುವ ಸಂಖ್ಯೆಯನ್ನು ಆಯ್ಕೆಮಾಡಿ.")
except ValueError:
print("ತಪ್ಪಾದ ಇನ್ಪುಟ್. ದಯವಿಟ್ಟು ಸಂಖ್ಯೆಯನ್ನು ಮಾತ್ರ ನಮೂದಿಸಿ.")
def main():
"""ಅಪ್ಲಿಕೇಶನ್ನ ಮುಖ್ಯ ಫಂಕ್ಷನ್."""
tasks = [] # ಕೆಲಸಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಖಾಲಿ ಲಿಸ್ಟ್
while True:
print("\n--- To-Do List ಮೆನು ---")
print("1. ಕೆಲಸಗಳನ್ನು ವೀಕ್ಷಿಸಿ (View Tasks)")
print("2. ಕೆಲಸವನ್ನು ಸೇರಿಸಿ (Add Task)")
print("3. ಕೆಲಸವನ್ನು ತೆಗೆದುಹಾಕಿ (Remove Task)")
print("4. ನಿರ್ಗಮಿಸಿ (Exit)")
choice = input("ನಿಮ್ಮ ಆಯ್ಕೆಯನ್ನು ನಮೂದಿಸಿ (1/2/3/4): ")
if choice == '1':
display_tasks(tasks)
elif choice == '2':
add_task(tasks)
elif choice == '3':
remove_task(tasks)
elif choice == '4':
print("ಅಪ್ಲಿಕೇಶನ್ನಿಂದ ನಿರ್ಗಮಿಸಲಾಗುತ್ತಿದೆ. ಧನ್ಯವಾದಗಳು!")
break
else:
print("ತಪ್ಪಾದ ಆಯ್ಕೆ. ದಯವಿಟ್ಟು ಮೆನುವಿನಿಂದ ಆಯ್ಕೆಮಾಡಿ.")
if __name__ == "__main__":
main()
ವಿವರಣೆ
tasks = []: ನಮ್ಮ ಎಲ್ಲಾ ಕೆಲಸಗಳನ್ನು (tasks) ಸ್ಟ್ರಿಂಗ್ಗಳಾಗಿ ಸಂಗ್ರಹಿಸಲು ನಾವು ಒಂದು ಖಾಲಿ ಲಿಸ್ಟ್ ಅನ್ನು ರಚಿಸುತ್ತೇವೆ.display_tasks(tasks): ಈ ಫಂಕ್ಷನ್ ಪಟ್ಟಿಯಲ್ಲಿರುವ ಎಲ್ಲಾ ಕೆಲಸಗಳನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತದೆ.enumerate()ಫಂಕ್ಷನ್ ಬಳಸಿ, ನಾವು ಪ್ರತಿ ಕೆಲಸಕ್ಕೂ 1 ರಿಂದ ಪ್ರಾರಂಭವಾಗುವ ಸಂಖ್ಯೆಯನ್ನು ನೀಡುತ್ತೇವೆ, ಇದು ಬಳಕೆದಾರರಿಗೆ ಓದಲು ಸುಲಭವಾಗುತ್ತದೆ.add_task(tasks): ಬಳಕೆದಾರರಿಂದ ಹೊಸ ಕೆಲಸವನ್ನು ಇನ್ಪುಟ್ ಆಗಿ ಪಡೆದು, ಅದನ್ನುappend()ಮೆಥಡ್ ಬಳಸಿtasksಲಿಸ್ಟ್ನ ಕೊನೆಗೆ ಸೇರಿಸುತ್ತದೆ.remove_task(tasks): ಮೊದಲು ಪಟ್ಟಿಯನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತದೆ. ನಂತರ ಬಳಕೆದಾರರಿಂದ ತೆಗೆದುಹಾಕಬೇಕಾದ ಕೆಲಸದ ಸಂಖ್ಯೆಯನ್ನು ಕೇಳುತ್ತದೆ.- ಬಳಕೆದಾರರು ನೀಡಿದ ಸಂಖ್ಯೆಯು ಮಾನ್ಯವಾಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸುತ್ತದೆ (
1 <= task_num <= len(tasks)). pop(index)ಮೆಥಡ್ ಬಳಸಿ ನಿರ್ದಿಷ್ಟ ಇಂಡೆಕ್ಸ್ನಲ್ಲಿರುವ ಕೆಲಸವನ್ನು ಲಿಸ್ಟ್ನಿಂದ ತೆಗೆದುಹಾಕುತ್ತದೆ. ನಾವುtask_num - 1ಅನ್ನು ಬಳಸುತ್ತೇವೆ ಏಕೆಂದರೆ ಲಿಸ್ಟ್ ಇಂಡೆಕ್ಸ್ಗಳು 0 ರಿಂದ ಪ್ರಾರಂಭವಾಗುತ್ತವೆ.
- ಬಳಕೆದಾರರು ನೀಡಿದ ಸಂಖ್ಯೆಯು ಮಾನ್ಯವಾಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸುತ್ತದೆ (
main()ಫಂಕ್ಷನ್: ಇದು ಅಪ್ಲಿಕೇಶನ್ನ ಮುಖ್ಯ ಕಂಟ್ರೋಲ್ ಲೂಪ್ ಅನ್ನು ಹೊಂದಿದೆ. ಇದು ಬಳಕೆದಾರರಿಗೆ ಮೆನುವನ್ನು ತೋರಿಸುತ್ತದೆ ಮತ್ತು ಅವರ ಆಯ್ಕೆಯ ಆಧಾರದ ಮೇಲೆ ಸೂಕ್ತವಾದ ಫಂಕ್ಷನ್ ಅನ್ನು ಕಾಲ್ ಮಾಡುತ್ತದೆ.while Trueಮತ್ತುbreak: ಬಳಕೆದಾರರು '4' (ನಿರ್ಗಮಿಸಿ) ಆಯ್ಕೆ ಮಾಡುವವರೆಗೆ ಅಪ್ಲಿಕೇಶನ್ ಚಾಲನೆಯಲ್ಲಿರಲು ಈ ಲೂಪ್ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.breakಸ್ಟೇಟ್ಮೆಂಟ್ ಲೂಪ್ ಅನ್ನು ಕೊನೆಗೊಳಿಸುತ್ತದೆ.