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

Python跨文件全局變量的實現(xiàn)方法示例

 更新時間:2017年12月10日 09:27:33   投稿:daisy  
我們在使用Python編寫應(yīng)用的時候,有時候會遇到多個文件之間傳遞同一個全局變量的情況。所以下面這篇文章主要給大家介紹了關(guān)于Python跨文件全局變量的實現(xiàn)方法,需要的朋友可以參考借鑒,下面來一起看看吧。

前言

在C語言中,由于變量一定是先聲明,后使用,所以我們可以清楚的知道,現(xiàn)在使用的變量是全局還是局部,比如:

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跨文件全局變量的實現(xiàn)

Python 中 global 關(guān)鍵字可以定義一個變量為全局變量,但是這個僅限于在一個模塊(py文件)中調(diào)用全局變量,在另外一個py文件 再次使用 global x 也是無法訪問到的,因為在這個py模塊中并沒有一個叫做x的變量,于是就會報錯 未定義。

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

全局變量管理模塊 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

設(shè)置全局變量  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,得出的結(jié)果是  cc: 90

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • python中的getattribute 、getattr、setattr方法詳解

    python中的getattribute 、getattr、setattr方法詳解

    這篇文章主要介紹了python中的getattribute 、getattr、setattr方法詳解,python類中默認有一些特殊方法,這篇文章記錄一下特殊方法的功能及用法,需要的朋友可以參考下
    2023-11-11
  • 基于Python實現(xiàn)一個簡單的學(xué)生管理系統(tǒng)

    基于Python實現(xiàn)一個簡單的學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細介紹了如何利用python實現(xiàn)簡單的學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-12-12
  • python+matplotlib繪制簡單的海豚(頂點和節(jié)點的操作)

    python+matplotlib繪制簡單的海豚(頂點和節(jié)點的操作)

    這篇文章主要介紹了python+matplotlib繪制簡單的海豚(頂點和節(jié)點的操作),具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • Python學(xué)習(xí)之文件的讀取詳解

    Python學(xué)習(xí)之文件的讀取詳解

    這篇文章主要為大家介紹了Python中如何將文件中的內(nèi)容讀取出去來的方法,文中通過示例進行了詳細講解,感興趣的小伙伴快跟隨小編一起學(xué)習(xí)一下
    2022-03-03
  • 深入淺析Python字符編碼

    深入淺析Python字符編碼

    Python的字符串編碼規(guī)則一直讓我很頭疼,花了點時間研究了下,并不復(fù)雜,本文給大家介紹python字符編碼,感興趣的朋友一起學(xué)習(xí)吧
    2015-11-11
  • Python實現(xiàn)圖像增強

    Python實現(xiàn)圖像增強

    這篇文章主要為大家詳細介紹了Python實現(xiàn)圖像增強,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • Python?生成器yield原理及用法

    Python?生成器yield原理及用法

    這篇文章主要介紹了Python?生成器yield原理及用法,yield?是實現(xiàn)生成器方法之一,當(dāng)函數(shù)使用yield方法,則該函數(shù)就成為了一個生成器,更多相關(guān)資料需要的小伙伴可以參考一下下面文章內(nèi)容
    2022-06-06
  • Pytorch torch.repeat_interleave()用法示例詳解

    Pytorch torch.repeat_interleave()用法示例詳解

    torch.repeat_interleave() 是 PyTorch 中的一個函數(shù),用于按指定的方式重復(fù)張量中的元素,這篇文章主要介紹了Pytorch torch.repeat_interleave()用法示例詳解,需要的朋友可以參考下
    2024-01-01
  • python解壓TAR文件至指定文件夾的實例

    python解壓TAR文件至指定文件夾的實例

    今天小編就為大家分享一篇python解壓TAR文件至指定文件夾的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python OpenCV 使用滑動條來調(diào)整函數(shù)參數(shù)的方法

    Python OpenCV 使用滑動條來調(diào)整函數(shù)參數(shù)的方法

    這篇文章主要介紹了Python OpenCV 使用滑動條來調(diào)整函數(shù)參數(shù)的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07

最新評論

广州市| 景宁| 普定县| 兰坪| 永丰县| 册亨县| 郎溪县| 色达县| 吕梁市| 铁力市| 武平县| 浮山县| 寿宁县| 鄂州市| 宁陕县| 信宜市| 岳池县| 武冈市| 江永县| 平凉市| 阳城县| 纳雍县| 自贡市| 高要市| 砀山县| 修水县| 调兵山市| 瓦房店市| 彝良县| 旌德县| 屏南县| 夏河县| 辽宁省| 新平| 民县| 垣曲县| 元氏县| 古交市| 乐昌市| 敖汉旗| 灵川县|