Хотя я согласен с комментарием по вашему отвечу, я по-прежнему буду стараться изо всех сил дать вам некоторые рекомендации.
Оригинальный код:
def print_menu():
print('1. Print Phone Numbers')
print('2. Add a Phone Number')
print('3. Remove a Phone Number')
print('4. Lookup a Phone Number')
print('5. Quit')
print()
numbers = {}
menu_choice = 0
print_menu()
while menu_choice != 5:
menu_choice = int(input("Type in a number (1-5): "))
if menu_choice == 1:
print("Telephone Numbers:")
for x in numbers.keys():
print("Name: ", x, "\tNumber:", numbers[x])
print()
elif menu_choice == 2:
print("Add Name and Number")
name = input("Name: ")
phone = input("Number: ")
numbers[name] = phone
elif menu_choice == 3:
print("Remove Name and Number")
name = input("Name: ")
if name in numbers:
del numbers[name]
else:
print(name, "was not found")
elif menu_choice == 4:
print("Lookup Number")
name = input("Name: ")
if name in numbers:
print("The number is", numbers[name])
else:
print(name, "was not found")
elif menu_choice != 5:
print_menu()
Обратите внимание, что numbers
равно {}
- это означает, что это «словарь», который хранит пары ключ/значение. Чтобы добавить в словарь (или «dict»), вы можете изменить его вручную как таковой: numbers = {'David': 18003574689}
. Итак, чтобы получить номер телефона Дэвида, вы должны ввести numbers['David']
.
Другим способ добавить к нему по инстанцированию его (что уже сделано для вас через numbers = {}
), а затем добавление информации в к нему с помощью контекстных формул dictname['key'] = value
. Таким образом, в этом случае стенография может быть numbers['Laura'] = 9173162546
.
Теперь, чтобы добавить list
в микс, вы можете использовать []
(что является списком на python), но вы, вероятно, лучше всего вложили бы другой dict в текущий. Например, вместо numbers = {'David': 18003574689}
теперь вы можете получить numbers = {'David': {'phone number': 18003574689, 'e-mail': '[email protected]', 'address web page': 'http://dave.com'}, 'Laura': [...etc...]}
.
Чтобы получить доступ к этим новым вложенным диктофонам, то, что вы можете сделать, это стенограмма numbers['David']['phone number']
, которая вернет его #. Затем вы можете сделать этот точный короткий код еще 2 раза numbers['David']['e-mail']
& numbers['David']['address web page']
. Эти три будут обращаться к связанным данным.
Поскольку я считаю, что это самая сложная часть для новичков, я остановлюсь здесь, так как остальное должно быть легко. Все, что вам нужно сделать, это создать новые входы в правильных условиях if
. Назначьте захваченные входные данные в соответствующие переменные с помощью оператора назначения =
(например, email = input('Email: ')
), а затем используйте остальную информацию по логике. Надеюсь, это поможет.
что вы пробовали? опубликуйте какой-то код, объясните конкретную проблему, с которой вы сталкиваетесь, а затем, возможно, кто-то может вам помочь. –