如何在函数之外的列表中添加内容:
greeting = ["Hello","Hi"]
def addGreeting():
greeting.append(raw_input("add greeting here: "))
如何更改函数内函数外的列表/变量的实际值?
答案 0 :(得分:0)
greeting = ["Hello", "Hi"]
设计一个函数,该函数在运行时接受参数替换参数。
def addGreeting(list,newgreeting):
list.append(newgreeting)
现在调用函数
addGreeting(greeting,"This is a new greeting!")
答案 1 :(得分:0)
首先,您发布的代码按预期工作:
greeting = ["Hello","Hi"]
print(greeting)
def addGreeting():
greeting.append(raw_input("add greeting here: "))
addGreeting()
print(greeting)
无论你添加什么,都会在greeting
中。但这是非常混乱和隐含的,它依赖于你给出变量的特定名称。相反,考虑做
def add_greeting_from_input(greetings):
greetings.append(raw_input("add greeting here: "))
return greetings
现在这个功能更加灵活,并且完全明确了它的作用。具有隐式行为的函数理想情况下应限于类,它们显然(希望)作用于实例本身。