2011-12-26 41 views
0

我有一個python腳本:main.py,它執行一個cx_frozen python腳本:test.exe我已經創建。 main.py需要發送變量到test.exe。如果凍結的腳本能夠發回變量,那也會很棒。Python,在腳本和.exe之間傳遞變量

到目前爲止,我已經保存了main.py中的.txt文件,並從test.exe端接受它們。但是現在我引入了多線程,我擔心test.exe的實例將從用於其他test.exe實例的.txt中收集信息。

我想知道這是否可能?我如何告訴main.py發送變量test.exe的接受它們...,如果有可能,將它們送回在main.py

感謝

回答

1

發送變量的最簡單方法到一個子程序是使用命令行參數或環境變量。如果你想雙向通信,你可以使用管道傳輸你當前通過文本文件發送的信息(甚至在Windows上)。 python subprocess(http://docs.python.org/library/subprocess.html)模塊非常擅長這種事情。

+0

謝謝,我infact使用子進程打開test.exe,但我沒有意識到這是有能力的。我也不知道如何去改變test.exe來接受變量。我會讀取子進程,並希望這將有助於 – Rhys 2011-12-26 10:49:23

+0

好吧,如果你不能修改test.exe,那麼你的選擇是有限的。但除此之外,子進程非常強大,值得仔細閱讀。 – 2011-12-26 10:54:58

+0

我可以修改test.exe ...我只是不確定需要修改什麼。我可以啓動它提示raw_input嗎? – Rhys 2011-12-26 10:58:24