最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
python模块中判断全局变量的赋值代码实例
时间:2022-06-25 02:09:14 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下python模块中判断全局变量的赋值代码实例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
1、在模块中,我们需要判断__name__是否被赋值为“__main__”。
python fibo.py
2、在脚本执行的情况下,模块的__name__属性将被赋值为__main__,这就是原因所在。
$ python fibo.py 50 0 1 1 2 3 5 8 13 21 34
3、若以模块导入,则不会执行:
>>> import fibo >>>
知识点扩展:
Python动态声明变量赋值代码实例
通过exec()、globals()和locals()
# 通过exec() for i in range(1, 4): # 第一次循环 i=1 时,会执行字符串中的python语句 ex1 = "exec1",以此类推 exec(f'ex{i} = "exec{i}"') # 通过globals()和locals() def test(): # globals() for i in range(1, 4): # 第一次循环 i=1 时,执行 globals()['gb1'] = 'global1', globals()是一个dict globals()[f'gb{i}'] = f'global{i}' # locals() for i in range(1, 4): locals()[f'lc{i}'] = f'local{i}' # 尝试打印locals的变量 try: print(lc1, lc2, lc3) # 会报错 except Exception as e: print(e) print(locals()['lc1'], locals()['lc2'], locals()['lc3']) # 通过键值对 if __name__ == '__main__': # 执行 test() print('---------------------') # 打印函数定义的全局变量 print(gb1, gb2, gb3) print('---------------------') # 打印通过exec()定义的变量 print(ex1, ex2, ex3)
输出结果:
name 'lc1' is not defined local1 local2 local3 --------------------- global1 global2 global3 --------------------- exec1 exec2 exec3
相关文章
- 王者荣耀侦探能力大测试攻略 王者荣耀侦探能力大测试怎么过 11-22
- 无期迷途主线前瞻兑换码是什么 11-22
- 原神欧洛伦怎么培养 11-22
- 炉石传说网易云音乐联动怎么玩 11-22
- 永劫无间手游确幸转盘怎么样 11-22
- 无期迷途主线前瞻兑换码是什么 无期迷途主线前瞻直播兑换码介绍 11-22