嗨,我正在尝试解决这个问题。我知道我的代码是错误的,但我不知道如何解决。如果有人可以帮助,那就太好了,谢谢!!
编写并测试一个要求输入俱乐部中所有成员姓名的函数。但是,我们不知道俱乐部中实际上有多少成员。使用“ while循环”,该循环将重复直到输入所有成员的姓名为止。 “ while循环”将如何知道已输入所有成员的姓名?
def club():
members = []
done = False
while (not done):
mem = input("enter name")
if name == "done":
return False
else:
return (members.append(mem)
File "main.py", line 10
^
SyntaxError: unexpected EOF while parsing
答案 0 :(得分:1)
您正在将未定义的变量“名称”指定为等于“完成”。我假设您希望用户输入“完成”以表示已输入所有名称。更改if语句以读取下面显示的内容。
您还具有返回False的if语句。最终将给您无限循环。完成等于True,退出循环。
def club():
members = []
done = False
while done != True:
mem = input("Enter a name, enter 'done' when finished: ")
if mem == "done":
done = True
else:
members.append(mem)
print(members)
club()
这是适用于您所查看内容的解决方案。我在末尾添加了print(members)
,向您展示了成员列表在键入“完成”之前如何增长。查看下面的输出。