Как я могу использовать вводимые пользователем данные для вызова функций? - PullRequest
0 голосов
/ 06 мая 2020

Я хочу вызвать функцию, используя пользовательский ввод. Пользователю будет предложено выбрать из n =, который вызовет функцию, которая создаст новую строку, и d, которая вызовет другую функцию, которая удалит строку из пользовательского ввода. И если пользовательский ввод отсутствует в вариантах выбора, он вернется к вариантам go.

И мне нужно создать функцию с использованием ключевого слова del, чтобы удалить строку. Но я понятия не имею, как это сделать.

def add(n):
    lines = list()
    add_line = input('Add a line: ')
    while add_line != '#':
        lines.append(add_line)
        add_line = input('Add a line: ')
    for line in lines:
        print(lines.index(line) +1, end = '')
        print(":", line)

def delete(d):


def main():
    choice= input ("Command n, d: ")
    for a in choice:
        add(n)

main()

мой результат должен выглядеть так:

Command n, d : n
Add a line: It is a lovely morning
Add a line: #
1: It is a lovely morning


Command n, d: d
Line number: 3
1: It is a lovely morning
2: for reading a book

1 Ответ

0 голосов
/ 06 мая 2020

Вам необходимо сделать lines глобальным или передать его функции удаления.

lines = list() # move this out of add
def delete():
    global lines 
    line_no = input('line number to delete: ')
    del lines[int(line_no) - 1]

def main():
    choice = input ("Command n, d: ")
    if "a" in choice:
        add()
    elif "d" in choice:
         delete()

main()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...