鱼C论坛

 找回密码
 立即注册
查看: 2906|回复: 7

[已解决]global方法没有用,还是说没有定义该变量

[复制链接]
发表于 2019-6-13 11:17:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
>>> def my():
        count=10
        print(10)

       
>>> my()
10
>>> print(count)
Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    print(count)
NameError: name 'count' is not defined

>>> def my():
        global count
        count=10
        print(10)

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

>>> my()
10
>>>
最佳答案
2019-6-13 11:27:53
def my():
    global count
    count=10
    print(10)
   
>> my()
10
>>> print(count)
10
>>>

设定了 全局变量的其实可以的,只是需要先调用下
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-6-13 11:18:05 | 显示全部楼层
我的版本是3.5.1 ,是这个版本不支持global吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-13 11:20:06 From FishC Mobile | 显示全部楼层
在函数内部申请变量 即使你加global
外面也不认识
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-13 11:20:53 | 显示全部楼层
哦。。我知道了,是要先运行一下这个函数,后面就可以了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-6-13 11:21:45 | 显示全部楼层
wp231957 发表于 2019-6-13 11:20
在函数内部申请变量 即使你加global
外面也不认识

找到了答案了,谢谢~
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-13 11:27:53 | 显示全部楼层    本楼为最佳答案   
def my():
    global count
    count=10
    print(10)
   
>> my()
10
>>> print(count)
10
>>>

设定了 全局变量的其实可以的,只是需要先调用下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-6-13 12:42:53 | 显示全部楼层
本帖最后由 此用户已被封禁 于 2019-6-13 12:54 编辑

def my():
        count=10
        print(10)
def my():
        global count
        count=10
        print(10)
楼主你一直在强调你打印的是10 print(10)print(10)print(10)

就算count已经被你改到太阳系之外了,你也只会知道count任然还在地球上啊【233】
Tip:你一直需要打印10怎么会打印得到count的值呢哈哈

当然你还需要需要调用行一次函数,让全局变量生效才可以啊。

全局变量使用之前的变量可以不存在,使用全局之后就会自动创建一个全局变量存在,但是一般使用起来都习惯先赋值,一般都是赋值0或者[]之类的.
不然等你回过头来看代码的时候,函数里突然出现的这个变量有什么用你都不知道。。。
小甲鱼好像也不建议大家用全局变量,因为如果函数要重复使用的话,每跑一次可能这个变量数就会全局覆盖。

QQ浏览器截图20190613124845.png
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-13 13:34:46 | 显示全部楼层
此用户已被封禁 发表于 2019-6-13 12:42
def my():
        count=10
        print(10)

嗯嗯,谢谢,明白了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-9-11 12:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表