我似乎在某种程度上搞砸了最基本的东西。我有:
def function(a, b, c):
return 'hi'
print(function(a,b,c))
会为每个变量生成NameError
。
这是什么原因?
答案 0 :(得分:8)
函数参数的名称是局部变量,它们不能作为全局名称使用。 a
,b
和c
仅存在于函数内的 ,并接收您传递给函数的值。
您需要在调用函数时创建新变量或使用文字值:
print(function(1, 2, 3))
会有效,因为1
,2
和3
是传递给函数的实际值。