【发布时间】:2015-12-20 23:20:36
【问题描述】:
当我在 shell 上要求 python 第二次打印它时,为什么我的列表是空的?
def name():
name = str(input("Name:"))
return name
def phone():
phone = str(input("Phone Number: "))
return phone
def email():
email = str(input("Email: "))
return email
然后我创建了一个join 函数,以便将所有数据添加到列表中:
def join(lst, name, phone, email):
name = name()
if name in lst:
print("Name already in")
phone = phone()
if phone in lst:
print("Phone already exists")
email = email()
if email in lst:
print("Email already exists!")
lst += [name]
lst += [phone]
lst += [email]
print("Added!")
return lst
列出地址簿上每个条目的功能:
def print_list(lst):
print(lst)
菜单如下所示:
def menu():
print("1-New Contact")
print("2-Print list")
option = int(input("Option:"))
return option
def repeat(lst):
option = menu()
while option < 2 and option >= 1:
if option == 1:
lst = join(lst, name, phone, email)
elif opcao == 2:
lst = print_list(lst)
else:
print("Invalid option")
opcao = menu()
lst = []
call = repeat(lst)
print(call)
【问题讨论】:
-
能否请您提供一个完整的MCVE,而不是几个代码sn-ps?如果您的代码很长,请将其缩小到您真正需要的部分,以使您的问题可重现。此外,请修复您的语法错误(缩进和字符串)。
-
您的缩进已关闭,您缺少引号,并且您屏蔽了一个函数。
-
原始文件的识别没有问题,程序运行良好,唯一的问题是当我第二次运行菜单并要求它再次打印列表时。 @TigerhawkT3
标签: python python-3.x