[英]How to detect if program is being compiled by cx_freeze?
我有一個使用configparser讀取ini的python程序。 我想與python文件具有相同的名稱,這就是為什么我使用以下代碼的原因:
# nativ python
#fileName = sys.argv[0].split('.')[0]
# compiled python
fileName = sys.argv[0].split('\\')[-1]
fileName = fileName.split('.')[0]
如您所見,根據運行方式的不同,我有不同的版本。 將其作為python腳本sys.argv運行會產生與將其用作exe時不同的結果。 我手動切換它,有時我忘記了它,不得不對其進行更改並不得不重新編譯整個過程。 但是我看到了其他類似的東西:
if sys.platform == "win64":
base = "Win64GUI"
else:
base = "Win32GUI"
我想知道是否可以使用類似於以下內容檢測cx_freeze是否正在編譯源代碼:
if getting_compiled():
fileName = sys.argv[0].split('.')[0]
else:
fileName = sys.argv[0].split('\\')[-1]
fileName = fileName.split('.')[0]
是的,您可以檢查由cx_Freeze設置的“ sys.frozen”的值。
getattr(sys,“ frozen”,False)
應該為你做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.