qq_45240069 2021-04-07 08:10 采纳率: 0%
浏览 80

python中形参与局部、全局变量的关系有些搞不明白?

x = 2
def fun1():
    print(x,end = '\t')
def fun2():
    global x
    x += 1
    print(x,end = '\t')
fun1()
fun2()
print(x,end = '')

此处为全局变量

def addone(a): # a为形参
    a += 1
    print(a)
a = 3          
addone(a)      
print(a)

此处为形参

这两段代码差不多,但是如果将global注释掉,第一段代码就会报错,有大佬讲一下吗

  • 写回答

4条回答 默认 最新

  • 关注

    形参就是局部变量,但局部变量不一定是形参,在函数内部定义的变量(包括形参)就是局部变量;

    global关键字定义的变量就是全局变量,可以共享数据。
    评论

报告相同问题?