时间:2021-05-23
1、在模块中,我们需要判断__name__是否被赋值为“__main__”。
python fibo.py <arguments>2、在脚本执行的情况下,模块的__name__属性将被赋值为__main__,这就是原因所在。
$ python fibo.py 500 1 1 2 3 5 8 13 21 343、若以模块导入,则不会执行:
>>> 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 definedlocal1 local2 local3---------------------global1 global2 global3---------------------exec1 exec2 exec3到此这篇关于python模块中判断全局变量的赋值的实例讲解的文章就介绍到这了,更多相关python判断全局变量赋值内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Ruby全局变量全局变量以$开头。未初始化的全局变量的值为nil,在使用-w选项后,会产生警告。给全局变量赋值会改变全局状态,所以不建议使用全局变量。下面的实例
最近在学习VUE.js中间涉及到JS全局变量,与其说是VUE的全局变量,不如说是模块化JS开发的全局变量。1、全局变量专用模块就是以一个特定模块
最近在学习VUE.js中间涉及到JS全局变量,与其说是VUE的全局变量,不如说是模块化JS开发的全局变量。1、全局变量专用模块就是以一个特定模块来组织管理这些全
本文实例讲述了python中global用法。分享给大家供大家参考。具体分析如下:1、global---将变量定义为全局变量。可以通过定义为全局变量,实现在函数
我来给处入行的人讲解一下全局变量global的使用,”全局变量“,这个名词中的全局两个字已经告诉我们这个变量在各个地方都能用,先看一个实例:复制代码代码如下:结