我是编程/ Python的新手。我正在尝试创建一个将单词添加到列表中的函数。我尝试使用while循环来添加询问用户是否要添加另一个单词。如果用户输入'y'或'Y',我想再次运行该功能。如果用户输入任何其他内容,我希望该函数返回列表。当我运行该函数时,无论输入什么,它都会继续再次运行该函数。请帮忙。感谢
def add_list():
x = []
first_list = raw_input('Please input a word to add to a list ')
x.append(first_list)
response = raw_input('Would you like to enter another word ')
while response == 'y' or 'Y':
add_list()
else:
return x
答案 0 :(得分:4)
while response == 'y' or 'Y':
应该是
while response == 'y' or response == 'Y':
或更好:
while response in ('y', 'Y'):
这就是为什么你做的不起作用的原因。下面的每一行都是等价的。
while response == 'y' or 'Y'
while (response == 'y') or ('Y')
while (response == 'y') or True
while True
答案 1 :(得分:1)
只需将列表作为传递给函数的参数:
x = []
add_list(x)
使用add_list(x)
def add_list(x):
first_list = raw_input('Please input a word to add to a list ')
x.append(first_list)
response = raw_input('Would you like to enter another word ')
while response in ('y', 'Y'):
add_list(x)
else:
return