python模塊中判斷全局變量的賦值的實(shí)例講解
1、在模塊中,我們需要判斷__name__是否被賦值為“__main__”。
python fibo.py <arguments>
2、在腳本執(zhí)行的情況下,模塊的__name__屬性將被賦值為__main__,這就是原因所在。
$ python fibo.py 50 0 1 1 2 3 5 8 13 21 34
3、若以模塊導(dǎo)入,則不會(huì)執(zhí)行:
>>> import fibo >>>
知識(shí)點(diǎn)擴(kuò)展:
Python動(dòng)態(tài)聲明變量賦值代碼實(shí)例
通過exec()、globals()和locals()
# 通過exec()
for i in range(1, 4):
# 第一次循環(huán) i=1 時(shí),會(huì)執(zhí)行字符串中的python語句 ex1 = "exec1",以此類推
exec(f'ex{i} = "exec{i}"')
# 通過globals()和locals()
def test():
# globals()
for i in range(1, 4):
# 第一次循環(huán) i=1 時(shí),執(zhí)行 globals()['gb1'] = 'global1', globals()是一個(gè)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) # 會(huì)報(bào)錯(cuò)
except Exception as e:
print(e)
print(locals()['lc1'], locals()['lc2'], locals()['lc3']) # 通過鍵值對(duì)
if __name__ == '__main__':
# 執(zhí)行
test()
print('---------------------')
# 打印函數(shù)定義的全局變量
print(gb1, gb2, gb3)
print('---------------------')
# 打印通過exec()定義的變量
print(ex1, ex2, ex3)
輸出結(jié)果:
name 'lc1' is not defined local1 local2 local3 --------------------- global1 global2 global3 --------------------- exec1 exec2 exec3
到此這篇關(guān)于python模塊中判斷全局變量的賦值的實(shí)例講解的文章就介紹到這了,更多相關(guān)python判斷全局變量賦值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
jupyter notebook指定啟動(dòng)目錄的方法
這篇文章主要介紹了jupyter notebook指定啟動(dòng)目錄的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
解決Python 異常TypeError: cannot concatenate ''str'' and ''int''
這篇文章主要介紹了解決Python 異常TypeError: cannot concatenate 'str' and 'int' objects,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-04-04
可視化工具PyVista多線程顯示多窗口的實(shí)例代碼
這篇文章主要介紹了可視化工具PyVista多線程顯示多窗口,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04
python3.6連接mysql數(shù)據(jù)庫及增刪改查操作詳解
這篇文章主要介紹了python3.6 連接mysql數(shù)據(jù)庫及增刪改查操作詳解,需要的朋友可以參考下2020-02-02
pytorch加載的cifar10數(shù)據(jù)集過程詳解
這篇文章主要介紹了pytorch加載的cifar10數(shù)據(jù)集,到底有沒有經(jīng)過歸一化,本文對(duì)這一問題給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-11-11
PyQt+socket實(shí)現(xiàn)遠(yuǎn)程操作服務(wù)器的方法示例
這篇文章主要介紹了PyQt+socket實(shí)現(xiàn)遠(yuǎn)程操作服務(wù)器的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
OpenCV4.1.0+VS2017環(huán)境配置的方法步驟
這篇文章主要介紹了OpenCV4.1.0+VS2017環(huán)境配置的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07

