python模塊中判斷全局變量的賦值的實例講解
1、在模塊中,我們需要判斷__name__是否被賦值為“__main__”。
python fibo.py <arguments>
2、在腳本執行的情況下,模塊的__name__屬性將被賦值為__main__,這就是原因所在。
$ python fibo.py 500 1 1 2 3 5 8 13 21 34
3、若以模塊導入,則不會執行:
>>> import fibo>>>
知識點擴展:
Python動態聲明變量賦值代碼實例
通過exec()、globals()和locals()
# 通過exec()for i in range(1, 4): # 第一次循環 i=1 時,會執行字符串中的python語句 ex1 = 'exec1',以此類推 exec(f’ex{i} = 'exec{i}'’)# 通過globals()和locals()def test(): # globals() for i in range(1, 4): # 第一次循環 i=1 時,執行 globals()[’gb1’] = ’global1’, globals()是一個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) # 會報錯 except Exception as e: print(e) print(locals()[’lc1’], locals()[’lc2’], locals()[’lc3’]) # 通過鍵值對if __name__ == ’__main__’: # 執行 test() print(’---------------------’) # 打印函數定義的全局變量 print(gb1, gb2, gb3) print(’---------------------’) # 打印通過exec()定義的變量 print(ex1, ex2, ex3)
輸出結果:
name ’lc1’ is not definedlocal1 local2 local3---------------------global1 global2 global3---------------------exec1 exec2 exec3
到此這篇關于python模塊中判斷全局變量的賦值的實例講解的文章就介紹到這了,更多相關python判斷全局變量賦值內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
1. Express 框架中使用 EJS 模板引擎并結合 silly-datetime 庫進行日期格式化的實現方法2. Java構建JDBC應用程序的實例操作3. Python使用oslo.vmware管理ESXI虛擬機的示例參考4. 一篇文章帶你了解JavaScript-對象5. ThinkPHP5 通過ajax插入圖片并實時顯示(完整代碼)6. IntelliJ IDEA設置條件斷點的方法步驟7. javascript設計模式 ? 建造者模式原理與應用實例分析8. Ajax引擎 ajax請求步驟詳細代碼9. 解決Python paramiko 模塊遠程執行ssh 命令 nohup 不生效的問題10. 淺談SpringMVC jsp前臺獲取參數的方式 EL表達式
