我有一个小的 Python 程序,可以作为 py 文件使用,但也可以作为独立的 pyz 和 exe(通过 pyinstaller)文件使用,其中包含所有依赖项。
在 pyz 或 exe 中显示许可证信息时,我需要包含有关我所包含的依赖项的额外语句。
如何区分程序是作为 py、pyz 还是 exe 运行以显示不同的许可证?
.
我找到了对另一个问题的回答,这可能对 exe 有帮助:https://stackoverflow.com/a/404750/36061
if getattr(sys, 'frozen', False):
print(EXE_LICENCE)
else:
print(NORMAL_LICENCE)
最佳答案
把几张支票放在一起。第一个检查它是否作为 pyinstaller exe 运行。第二个(取自对 OP 的评论)如果它是一个 pyz。然后默认。
if getattr(sys, 'frozen', False):
print(EXE_LICENCE)
elif __loader__.__module__ == 'zipimport':
print(PYZ_LICENCE)
else:
print(NORMAL_LICENCE)
关于python - 根据程序的运行方式显示不同的信息 : py vs pyz vs exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67344816/