为什么执行以下代码时python代码显示错误?这里的变量是全局声明的,不取全局变量的值
a=7
def fun1(a):
if a%2==0: return 0
else: return 1
fun1()
答案 0 :(得分:1)
您已将a
声明为变量,但是函数定义需要一个参数,该参数也恰好称为a
,但与声明的变量无关。
两个选项,您可以在调用时将变量传递给函数:
a=7
def fun1(a):
if a%2==0:
return 0
else:
return 1
fun1(a)
或者您可以在函数内将a
声明为global
来访问它,而不必在调用函数时将其作为参数传递:
a=7
def fun1():
global a
if a%2==0:
return 0
else:
return 1
fun1()
答案 1 :(得分:0)
您声明fun1()
要求提供一个参数,然后在不提供任何参数的情况下调用它。