티스토리 뷰

반응형


물론, 할 일을 입력한 후에 입력된 내용을 볼 수 있는 기능을 추가하겠습니다.

1. 개요

이 할 일 목록 애플리케이션은 사용자가 할 일을 추가, 수정, 삭제하고 입력된 할 일 목록을 확인할 수 있는 기능을 제공합니다.

2. 3가지 형태의 코드 작성

가. 기본코드

# 할 일 목록을 저장할 리스트 생성
todo_list = []

# 사용자 입력에 따라 기능 수행
while True:
    print("할 일 목록 애플리케이션")
    print("1. 할 일 추가")
    print("2. 할 일 수정")
    print("3. 할 일 삭제")
    print("4. 할 일 목록 확인")
    print("5. 나가기")

    choice = input("원하는 작업을 선택하세요: ")

    if choice == "1":
        new_task = input("추가할 할 일을 입력하세요: ")
        todo_list.append(new_task)
        print("할 일이 추가되었습니다.")
    elif choice == "2":
        index = int(input("수정할 할 일의 인덱스를 입력하세요: "))
        if 0 <= index < len(todo_list):
            new_task = input("새로운 할 일 내용을 입력하세요: ")
            todo_list[index] = new_task
            print("할 일이 수정되었습니다.")
        else:
            print("유효하지 않은 인덱스입니다.")
    elif choice == "3":
        index = int(input("삭제할 할 일의 인덱스를 입력하세요: "))
        if 0 <= index < len(todo_list):
            removed_task = todo_list.pop(index)
            print(f"'{removed_task}' 할 일이 삭제되었습니다.")
        else:
            print("유효하지 않은 인덱스입니다.")
    elif choice == "4":
        print("할 일 목록:")
        for index, task in enumerate(todo_list, start=1):
            print(f"{index}. {task}")
    elif choice == "5":
        print("애플리케이션을 종료합니다.")
        break
    else:
        print("올바른 선택을 입력하세요.")

나. 함수기반 코드

def add_task(todo_list):
    new_task = input("추가할 할 일을 입력하세요: ")
    todo_list.append(new_task)
    print("할 일이 추가되었습니다.")

def modify_task(todo_list):
    index = int(input("수정할 할 일의 인덱스를 입력하세요: "))
    if 0 <= index < len(todo_list):
        new_task = input("새로운 할 일 내용을 입력하세요: ")
        todo_list[index] = new_task
        print("할 일이 수정되었습니다.")
    else:
        print("유효하지 않은 인덱스입니다.")

def delete_task(todo_list):
    index = int(input("삭제할 할 일의 인덱스를 입력하세요: "))
    if 0 <= index < len(todo_list):
        removed_task = todo_list.pop(index)
        print(f"'{removed_task}' 할 일이 삭제되었습니다.")
    else:
        print("유효하지 않은 인덱스입니다.")

def view_tasks(todo_list):
    print("할 일 목록:")
    for index, task in enumerate(todo_list, start=1):
        print(f"{index}. {task}")

def main():
    todo_list = []

    while True:
        print("할 일 목록 애플리케이션")
        print("1. 할 일 추가")
        print("2. 할 일 수정")
        print("3. 할 일 삭제")
        print("4. 할 일 목록 확인")
        print("5. 나가기")

        choice = input("원하는 작업을 선택하세요: ")

        if choice == "1":
            add_task(todo_list)
        elif choice == "2":
            modify_task(todo_list)
        elif choice == "3":
            delete_task(todo_list)
        elif choice == "4":
            view_tasks(todo_list)
        elif choice == "5":
            print("애플리케이션을 종료합니다.")
            break
        else:
            print("올바른 선택을 입력하세요.")

if __name__ == "__main__":
    main()

다. 클래스 기반 코드

class TodoListApp:
    def __init__(self):
        self.todo_list = []

    def add_task(self):
        new_task = input("추가할 할 일을 입력하세요: ")
        self.todo_list.append(new_task)
        print("할 일이 추가되었습니다.")

    def modify_task(self):
        index = int(input("수정할 할 일의 인덱스를 입력하세요: "))
        if 0 <= index < len(self.todo_list):
            new_task = input("새로운 할 일 내용을 입력하세요: ")
            self.todo_list[index] = new_task
            print("할 일이 수정되었습니다.")
        else:
            print("유효하지 않은 인덱스입니다.")

    def delete_task(self):
        index = int(input("삭제할 할 일의 인덱스를 입력하세요: "))
        if 0 <= index < len(self.todo_list):
            removed_task = self.todo_list.pop(index)
            print(f"'{removed_task}' 할 일이 삭제되었습니다.")
        else:
            print("유효하지 않은 인덱스입니다.")

    def view_tasks(self):
        print("할 일 목록:")
        for index, task in enumerate(self.todo_list, start=1):
            print(f"{index}. {task}")

    def run(self):
        while True:
            print("할 일 목록 애플리케이션")
            print("1. 할 일 추가")
            print("2. 할 일 수정")
            print("3. 할 일 삭제")
            print("4. 할 일 목록 확인")
            print("5. 나가기")

            choice = input("원하는 작업을 선택하세요: ")

            if choice == "1":
                self.add_task()
            elif choice == "2":
                self.modify_task()
            elif choice == "3":
                self.delete_task()
            elif choice == "4":
                self.view_tasks()
            elif choice == "5":
                print("애플리케이션을 종료합니다.")
                break
            else:
                print("올바른 선택을 입력하세요.")

def main():
    app = TodoListApp()
    app.run()

if __name__ == "__main__":
    main()

이제 각 코드 예제에 할 일 목

록을 확인하는 기능이 추가되었습니다. 원하시는 방식으로 코드를 확장하고 개선하여 사용하실 수 있습니다.

반응형