国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python跨文件全局變量的實現方法示例

2020-02-16 11:02:12
字體:
來源:轉載
供稿:網友

前言

在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] = valuedef get_value(name, defValue=None): try:  return _global_dict[name] except KeyError:  return defValue

設置全局變量  a.py

#!/usr/bin/python# -*- coding: utf-8 -*-import sysimport globalvar as glgl._init()gl.set_value('name', 'cc')gl.set_value('score', 90)

獲取全局變量  b.py

#!/usr/bin/python# -*- coding: utf-8 -*-import globalvar as glname = gl.get_value('name')score = gl.get_value('score')print("%s: %s" % (name, score))

主程序  main.py

#!/usr/bin/python# -*- coding: utf-8 -*-import aimport b

然后運行主程序文件   python main.py,得出的結果是  cc: 90

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對武林站長站的支持。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 密云县| 兴海县| 贵阳市| 个旧市| 临桂县| 绥滨县| 天全县| 崇义县| 中超| 淄博市| 当雄县| 肇源县| 霍城县| 绥江县| 德州市| 连云港市| 莱芜市| 东城区| 贵德县| 五大连池市| 策勒县| 宜宾县| 昔阳县| 永兴县| 巴中市| 交城县| 高碑店市| 靖州| 淮北市| 旺苍县| 镶黄旗| 嘉荫县| 东平县| 六枝特区| 汉川市| 江源县| 景泰县| 双辽市| 二连浩特市| 琼中| 新巴尔虎右旗|