Python实现跨文件全局变量的方法
- 更新时间:2020-03-07 17:20:11
- 编辑:符若菱
在C语言中,由于变量一定是先声明,后使用,所以我们可以清楚的知道,现在使用的变量是全局还是局部,比如:
int a = 5; void test(void) { a = 1; // 没有先声明,所以用的是全局的变量a } void test1(void) { int a; a = 2; // 前面声明了,所以用的是局部变量a,对其所做的修改不会影响全局变量a } void main(void) { printf("before: a = %d\n", a); test(); printf("after test: a = %d\n", a); test1(); printf("after test1: a = %d\n", a); }
在python中,变量不需要先声明,直接使用即可。
Python跨文件全局变量的实现
Python 中 global 关键字可以定义一个变量为全局变量,但是这个仅限于在一个模块(py文件)中调用全局变量,在另外一个py文件 再次使用 global x 也是无法访问到的,因为在这个py模块中并没有一个叫做x的变量,于是就会报错 未定义。
借鉴global 关键字的思路,既然在一个文件里面可以生效的话,那么我们就专门为全局变量定义一个“全局变量管理模块”就好了
全局变量管理模块 globalvar.py
#!/usr/bin/python # -*- coding: utf-8 -*- def _init(): global _global_dict _global_dict = {} def set_value(name, value): _global_dict[name] = value def get_value(name, defValue=None): try: return _global_dict[name] except KeyError: return defValue
设置全局变量 a.py
#!/usr/bin/python # -*- coding: utf-8 -*- import sys import globalvar as gl gl._init() gl.set_value('name', 'cc') gl.set_value('score', 90)
获取全局变量 b.py
#!/usr/bin/python # -*- coding: utf-8 -*- import globalvar as gl name = gl.get_value('name') score = gl.get_value('score') print("%s: %s" % (name, score))
主程序 main.py
#!/usr/bin/python # -*- coding: utf-8 -*- import a import b
然后运行主程序文件 python main.py,得出的结果是 cc: 90
相关推荐:
完全掌握 Python
Python实现字符串匹配算法实例代码
Python扩展内置类型的实现方法分析
以上就是实例分析Python跨文件全局变量的实现方法的详细内容,更多请关注码农之家其它相关文章!
相关教程
-
Python使用get_text()方法从大段html中提取文本的实例
今天小编就为大家分享一篇Python使用get_text()方法从大段html中提取文本的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
发布时间:2019-09-08
-
Python实现shell sed替换简单的功能
下面小编就为大家带来一篇Python 实现简单的shell sed替换功能(实例讲解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
发布时间:2019-07-11
-
Python3.7从零开始学
本书专门针对Python新手量身定做,是编者学习和使用Python开发过程中的体会和经验总结,涵盖实际开发中重要的知识点,内容详尽,代码可读性及可操作性强。
大小:75.8 MBPython3.7电子书
-
Python编程之美:最佳实践指南
这书由Python小区的高手KennethReitz进行并机构撰写,由小区数十名开发人员团体无私奉献。*的特点取决于,几近详细地小结了在Python程序编写时会采用的各种各样实践活动方法和工作经验,包含
大小:29.3 MBPython编程电子书
-
精通Python爬虫框架Scrapy
大小:8.6 MBPython爬虫电子书
-
从芯片到云端:Python物联网全栈开发实践
本书从物联网的基础概念开始,到相关技术选型、开源工程、参考设计与经验分享,利用Python可加快开发迭代速度、降低开发成本,并可以基于嵌入式Python建立完整的物联网软硬件生态
大小:214 MBPython电子书
-
Python地理空间分析指南
Python作为一种高级程序设计语言,凭借其简洁、易读及可扩展性日渐成为程序设计领域备受推崇的语言之一。 本书以地理空间分析为背景,介绍了Python在地理信息处理方面的应用技巧。全书共
大小:12.4 MBPython电子书
-
Python Cookbook
《Python Cookbook(第3版)中文版》介绍了Python应用在各个领域中的一些使用技巧和方法,其主题涵盖了数据结构和算法,字符串和文本,数字、日期和时间,迭代器和生成器,文件和I/O,数据编
大小:29.4 MBPython电子书
-
Python从入门到精通
《 Python从入门到精通 》从新手视角去往,根据浅显易懂的語言、多种多样的案例,详解了应用Python开展软件开发应当把握的各层面技术性。全书共有22章,包含初识Python、Python語言基本、运算
大小:18.9 MBPython入门电子书