簡體   English   中英

Python Cross文件模塊變量修改

[英]Python Cross file module variable modification

A.py

X = 10

B.py

import A
A.X = 100

C.py

import A
Print("A.X = ",A.X)

如果我先執行B然后執行C ,則得到AX = 10 但是模塊BX上所做的更改又如何呢? 為什么更改未反映在模塊C

Python腳本在具有單獨進程,內存,命名空間等的單獨shell中運行。在腳本中修改模塊屬性是一項內存中操作:它不會影響從中加載模塊的文件:

 $ python B.py

這會創建一個python過程中,加載B.py ,然后A.py ,並修改對應於模塊的名稱空間的字典A 然后該過程將結束,丟失所有您未寫入磁盤的內容。

$ python C.py

這會創建一個python過程中,加載C.py ,然后A.py ,和來自新讀入模塊的字典打印新加載的值A 這將是文件A.py

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM