最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 3 實(shí)現(xiàn)定義跨模塊的全局變量和使用教程

 更新時(shí)間:2019年07月07日 09:48:36   作者:_Suwings  
這篇文章主要介紹了Python 3 實(shí)現(xiàn)定義跨模塊的全局變量和使用,本文通過實(shí)例代碼相結(jié)合的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

盡管某些書籍上總是說避免使用全局變量,但是在實(shí)際的需求不斷變化中,往往定義一個(gè)全局變量是最可靠的方法,但是又必須要避免變量名覆蓋。

Python 中 global 關(guān)鍵字可以定義一個(gè)變量為全局變量,但是這個(gè)僅限于在一個(gè)模塊(py文件)中調(diào)用全局變量:

我們知道Python使用變量的時(shí)候是可以直接使用的,x=[] ,y=2,z="123",而不需要先定義(var x; var y=2;var z='222'),這樣的話,在函數(shù)內(nèi)部就無法操作外部的變量了,因?yàn)樗倳?huì)認(rèn)為你是在定義一個(gè)新變量并且賦值,不過 global 就可以解決這個(gè)問題。

global 的基礎(chǔ)用法 :

x = 6
def func():
  global x #定義外部的x
  x = 1
func()
print (x)
#輸出1

 這個(gè)時(shí)候,即使你在另外一個(gè)py文件 再次使用 global x 也是無法訪問到的,因?yàn)樵谶@個(gè)py模塊中并沒有一個(gè)叫做x的變量,于是就會(huì)報(bào)錯(cuò) 未定義。

那么我們?cè)趺崔k?

借鑒global 關(guān)鍵字的思路,既然在一個(gè)文件里面可以生效的話,那么我們就專門為全局變量定義一個(gè)“全局變量管理模塊”就好了

具體代碼:

# -*- coding: utf-8 -*-
def _init():#初始化
  global _global_dict
  _global_dict = {}
def set_value(key,value):
  """ 定義一個(gè)全局變量 """
  _global_dict[key] = value
def get_value(key,defValue=None):
  """ 獲得一個(gè)全局變量,不存在則返回默認(rèn)值 """
  try:
    return _global_dict[key]
  except KeyError:
    return defValue

相信如果你看懂了就應(yīng)該知道思路了,利用global的單獨(dú)文件全局性,從而可以定義在一個(gè)文件中的全局變量,然后這個(gè)單個(gè)文件的全局變量可以保存多個(gè)文件的共同全局變量

操作的時(shí)候,以Key對(duì)Value 的方法操作,我相信大家都懂。

# -*- coding:utf-8 -*-
from YourPage import gol
gol._init()#先必須在主模塊初始化(只在Main模塊需要一次即可)
#定義跨模塊全局變量
gol.set_value('CODE','UTF-8')
gol.set_value('PORT',80)
gol.set_value('HOST','127.0.0.1')

然后其他的任何文件只需要導(dǎo)入即可使用:

# -*- coding: utf-8 -*-
from YourPage import gol
#不需要再初始化了
ROOT = gol.get_value('ROOT',80)
CODE = gol.get_value('CODE')


就這么簡單~

就這樣就可以實(shí)現(xiàn)跨文件的全局變量使用;

并且還有一個(gè)簡單但是強(qiáng)大的全局變量管理器,你可以自己添油加醋,實(shí)現(xiàn)一些比如全局變量禁止直接修改,禁止修改某些只可讀的全局變量等等。

總結(jié)

以上所述是小編給大家介紹的Python 3 實(shí)現(xiàn)定義跨模塊的全局變量和使用教程,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

相關(guān)文章

  • python安裝庫的最詳細(xì)方法(以安裝pygame庫為例)

    python安裝庫的最詳細(xì)方法(以安裝pygame庫為例)

    在學(xué)習(xí)了一個(gè)學(xué)期的python之后,我決定對(duì)pygame下手了,下面這篇文章主要給大家介紹了關(guān)于python安裝庫的最詳細(xì)方法,本文主要以安裝pygame庫為例,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • 用python完成一個(gè)分布式事務(wù)TCC

    用python完成一個(gè)分布式事務(wù)TCC

    這篇文章主要介紹了用python完成一個(gè)分布式事務(wù)TCC,文章里我們介紹了TCC的理論知識(shí),也通過一個(gè)例子,完整給出了編寫一個(gè)TCC事務(wù)的過程,涵蓋了正常成功完成,以及成功回滾的情況,需要的朋友可以參考一下文章的具體內(nèi)容
    2021-10-10
  • Python自動(dòng)化辦公之合并多個(gè)Excel

    Python自動(dòng)化辦公之合并多個(gè)Excel

    在日常的辦公自動(dòng)化工作中,尤其是處理大量數(shù)據(jù)時(shí),合并多個(gè)?Excel?表格是一個(gè)常見且繁瑣的任務(wù),下面小編就來為大家介紹一下如何使用Python輕松實(shí)現(xiàn)合并多個(gè)Excel吧
    2025-02-02
  • Numpy一維線性插值函數(shù)的用法

    Numpy一維線性插值函數(shù)的用法

    這篇文章主要介紹了Numpy一維線性插值函數(shù)的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python編程實(shí)現(xiàn)使用線性回歸預(yù)測(cè)數(shù)據(jù)

    Python編程實(shí)現(xiàn)使用線性回歸預(yù)測(cè)數(shù)據(jù)

    這篇文章主要介紹了Python編程實(shí)現(xiàn)使用線性回歸預(yù)測(cè)數(shù)據(jù),具有一定借鑒價(jià)值,需要的朋友可以了解下。
    2017-12-12
  • python子線程退出及線程退出控制的代碼

    python子線程退出及線程退出控制的代碼

    這篇文章主要介紹了python子線程退出及線程退出控制的代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10
  • python?ConfigParser庫的使用及遇到的坑

    python?ConfigParser庫的使用及遇到的坑

    這篇文章主要介紹了python?ConfigParser庫的使用及遇到的坑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Django多進(jìn)程滾動(dòng)日志問題解決方案

    Django多進(jìn)程滾動(dòng)日志問題解決方案

    這篇文章主要介紹了Django多進(jìn)程滾動(dòng)日志問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 如何使用Python快速生成gif圖

    如何使用Python快速生成gif圖

    這篇文章主要給大家介紹了關(guān)于如何使用Python快速生成gif圖的相關(guān)資料,我們需要用到 imageio 庫,文章通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-02-02
  • Python讀取HDFS目錄下的所有文件的實(shí)現(xiàn)示例

    Python讀取HDFS目錄下的所有文件的實(shí)現(xiàn)示例

    HDFS是Apache Hadoop的分布式文件系統(tǒng),本文主要介紹了Python讀取HDFS目錄下的所有文件的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07

最新評(píng)論

左云县| 页游| 镇坪县| 昭通市| 萝北县| 鹿泉市| 咸宁市| 株洲县| 浠水县| 南部县| 梁山县| 忻城县| 库尔勒市| 广丰县| 虹口区| 通州区| 溆浦县| 临沭县| 新晃| 汝阳县| 墨脱县| 宁陵县| 永和县| 浦县| 上栗县| 赞皇县| 崇义县| 曲阳县| 肇庆市| 阳谷县| 崇左市| 库尔勒市| 高要市| 茌平县| 柳州市| 青龙| 肇州县| 房山区| 南投县| 平江县| 象州县|