白白白白丶白 发表于 2020-7-7 14:54:43

global相关

x = 0
def func(x):
        global x
        x = 1
        return x#SyntaxError: name 'x' is parameter and global

x = 0
def func():
    global x
    x = 1
    return x

{:10_254:}请问为什么不带参数 就可以用global了?

qiuyouzhi 发表于 2020-7-7 14:56:50

因为你的参数名字是x呀

白白白白丶白 发表于 2020-7-7 14:59:01

qiuyouzhi 发表于 2020-7-7 14:56
因为你的参数名字是x呀

奥,参数换成别的就可以了是吧,

白白白白丶白 发表于 2020-7-7 14:59:34

白白白白丶白 发表于 2020-7-7 14:59
奥,参数换成别的就可以了是吧,

{:10_285:}果然

白白白白丶白 发表于 2020-7-7 15:39:33

qiuyouzhi 发表于 2020-7-7 14:56
因为你的参数名字是x呀

{:10_285:}

>>> def func(c):
        global x
        x = 1
        return x

>>> func(c)
Traceback (most recent call last):
File "<pyshell#112>", line 1, in <module>
    func(c)
NameError: name 'c' is not defined

请问为啥不能直接调func(c)?

qiuyouzhi 发表于 2020-7-7 15:54:12

白白白白丶白 发表于 2020-7-7 15:39
请问为啥不能直接调func(c)?

用变量都不定义的嘛
你c定义在哪了

白白白白丶白 发表于 2020-7-7 16:06:33

qiuyouzhi 发表于 2020-7-7 15:54
用变量都不定义的嘛
你c定义在哪了

{:10_312:}不定义他啥都不是啊,

永恒的蓝色梦想 发表于 2020-7-7 16:35:40

白白白白丶白 发表于 2020-7-7 15:39
请问为啥不能直接调func(c)?

c 是啥啊

qiuyouzhi 发表于 2020-7-7 16:45:20

白白白白丶白 发表于 2020-7-7 16:06
不定义他啥都不是啊,

不定义就用不了啊

白白白白丶白 发表于 2020-7-7 17:02:39

永恒的蓝色梦想 发表于 2020-7-7 16:35
c 是啥啊

啥也不是,之前写
func(x):
    global x
...

报错,然后把func里面的参数改成c了,就不报错了,但是再调用func(c)就报错了,c未定义。所以就问一下,

永恒的蓝色梦想 发表于 2020-7-7 17:03:21

白白白白丶白 发表于 2020-7-7 17:02
啥也不是,之前写
func(x):
    global x


你本来也没定义
页: [1]
查看完整版本: global相关