[英]Global Variable in Python cross module
我有兩個 Python 模塊:
one.py
; 和two.py
我想在運行的two.py
.Script two.py
更改X
全局變量。 在我運行one.py
一個.py
#!/usr/bin/env python
import two
def main():
two.function("20")
if __name__=="__main__":
main()
兩個.py
#!/usr/bin/env python
X="10"
def main():
while True:
function()
time.sleep(0.25)
def function(input="00"):
if(input!="00"):
global X
X=input
print "change"
print X
if __name__=="__main__":
main()
安慰:
sudo python two.py
10
10
10
10
after I run one.py but no change in two.py
在我運行 one.py 但在 two.py 中沒有變化之后
您正在執行的操作會動態更改變量。 它不會重寫文件。
這實際上是您可能想要做的。
myfile.txt
5
reader.py
with open('myfile.txt', 'r') as fp:
nb = int(fp.read())
print(nb)
writer.py
with open('myfile.txt', 'w') as fp:
fp.write('6')
現在,如果您運行reader.py
,它將輸出5
。 然后,如果您運行writer.py
,它不會輸出任何內容,只需將myfile.txt
的全部內容替換為6
。 然后,重新運行reader.py
,它將輸出6
,因為文件的內容已更改。 它之所以有效,是因為與您運行的程序不同,文件的內容不依賴於進程,它是“靜態的”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.