如何在函数内部更改函数外部的列表/变量的实际值?

2024-05-15 06:45:00 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在函数外的列表中添加内容:

greeting = ["Hello","Hi"]
def addGreeting():
    greeting.append(raw_input("add greeting here: "))

如何在函数内部更改函数外部的列表/变量的实际值


Tags: 函数add内容hello列表inputrawhere
2条回答

首先,您发布的代码按预期工作:

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

现在这个函数更灵活了,而且完全不清楚它作用于什么。理想情况下,具有隐式行为的函数应该限制在类中,在类中它们显然(希望)作用于实例本身

greeting = ["Hello", "Hi"]

设计一个函数,该函数在运行时接受要用参数替换的参数

def addGreeting(list,newgreeting):
    list.append(newgreeting)

现在调用函数

addGreeting(greeting,"This is a new greeting!")

相关问题 更多 >

    热门问题