我有以下代码:
A = 3
def Calculation():
global A
B = 2 * A
return B
print B
我收到错误:
NameError: name 'B' is not defined
如何修复此错误?什么是正确的代码?提前谢谢!
答案 0 :(得分:2)
你的例子毫无意义。
打印函数的返回值...
A = 3
def Calculation():
global A
B = 2 * A
return B
print Calculation()
或者不使用功能:
A = 3
B = 2 * A
print B
或者在功能中全球化B
并在打印B
之前调用该函数:
A = 3
def Calculation():
global A, B
B = 2 * A
Calculation()
print B
您不需要使用全局变量A
,但您应该将其作为参数传递给Calculation
。例如:
A = 3
def Calculation(a):
B = 2 * A
return B
print Calculation(A)
你也应该使用" snake-case"函数的名称(全部小写,带下划线的单独单词" _
")。
如何最好地编写代码示例(在我看来):
a = 3
def calculation(factor):
return = 2 * factor
print calculation(a)
答案 1 :(得分:1)
你可以简单地打印你的函数调用::
A = 3
def Calculation(a):
B = 2 * A
return B
print Calculation(A)
您收到B未定义的错误的原因是因为您的变量B是函数Calculation的局部变量。其范围仅在该方法中可见。
答案 2 :(得分:0)
A = 3
def Calculation():
global A
B = 2 * A
return B
B = Calculation()
print B