我是Python和編程的新手,所以這可能很容易,但我找不到合適的答案。我正在嘗試做以下事情。我想在模塊中有一個模塊,它應該由我的主模塊進行修改。 此外,如果具有變量和變量的模塊已經存在,從一開始就不清楚。 目前我做了以下內容:修改其他模塊中的變量
# test2.py
import os
# creates module test1
if os.path.isfile('test1.py') and os.path.getsize('test1.py') > 8:
pass
else:
txt = open('test1.py','w')
txt.write('testvar = {}')
txt.close()
import test1
testvar = test1.testvar
我testmodule如下所示:
# test.py
import test2
testvar = test2.testvar
# now modify testvar
txt = open('test1.py','w')
txt.write('testvar = '+repr(testvar))
txt.close()
這工作,如果在Python運行test.py但它有缺點,我需要一個用於任何類似testvar變量的獨立模塊。我寧願如果我可以有一個單一的模塊與許多這樣的變量,並使用某種test1.testvar.update(entry)
-方法來更改變量。 此外,如果我使用py2exe創建一個exe文件,那麼應用程序不會識別testvar變量。所以這個方法還有一個問題。 我想要所有這些的原因是在程序的許多不同運行中更改變量。 謝謝你的任何建議。
請停止這樣做。使用普通文件存儲變量,例如JSON格式或XML。你想要做的是非常難看的。 – poe123
或[''pickle''](https://docs.python.org/2/library/pickle.html)。請記住,python是一種純粹解釋的語言。代碼中的值不是常量,而是在運行時動態加載的值,並沒有真正的性能優勢。自我修改代碼只是一種災難。 – aruisdante
@ poe123正如我寫的,我已經假設,這將是糟糕的。這只是我能做的最好的事情。是否有理由爲什麼我應該使用XML或JSON而不是* .py?從我剛讀的JSON文件看起來就像* .py一樣。 –