【发布时间】:2016-05-22 13:17:51
【问题描述】:
如何将变量作为参数传递给函数?
这是我的代码
def hello (arg):
global my_name
my_name = "tarek"
print("my name is " + arg)
hello(my_name)
这应该打印出来
my name is tarek
但它没有,给了我一个 NameError,尽管我将变量 my_name 声明为全局变量。
好吧,如果我在函数外部声明变量,效果很好,但是为什么在函数内部声明变量时它不起作用?
【问题讨论】:
-
因为在你调用函数之后才定义变量。
-
在这段代码中你也不需要
global变量,global变量是一个典型的问题来源,你应该避免它们。
标签: python python-3.x scope