我有一个使用configparser读取INI文件的Python程序。我希望使用与Python文件相同的名称,因此我使用以下代码:
# nativ python
#fileName = sys.argv[0].split('.')[0]
# compiled python
fileName = sys.argv[0].split('\\')[-1]
fileName = fileName.split('.')[0]
您可以看到,我有不同的版本,取决于我运行它的模式。使用sys.argv作为Python脚本运行会产生与使用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]