我在使用以下功能正常工作时遇到了一些麻烦:
def answers_body():
user_preference = []
user_preference.extend(input("Please enter your answer: "))
我的问题真的归结为;我怎样才能重写这个,这样每次调用时列表都不会被清除?我正避免在这个程序中使用Global Variables;由于这个原因,我真的很感激任何更有经验的程序员在不诉诸全局变量/列表的情况下就如何纠正这一问题提出一些建议。
谢谢。
答案 0 :(得分:2)
一种方法是将preference_list
放在函数调用之外。我建议您使用list.append
,因为list.extend
主要用于向列表中添加多个值。
preference_list = []
def answers_body(body):
body.append(input("Please enter your answer: "))
for i in range(10):
answers_body(preference)
print(preference_list)
如果你不知道它是全局变量,你也可以将preference_list
保存到answers_body
的名称范围内。
def answers_body():
answers_body.preference_list.append(input("Please enter your answer: "))
answers_body.preference_list = []
for i in range(10):
answers_body()
print(answers_body.preference_list)