我有一个使用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]
答案 0 :(得分:2)
是的,您可以查看“sys.frozen”的值,该值由cx_Freeze设置。
getattr(sys,“frozen”,False)
应该为你做。