为什么我的 python(exe 文件)在作为 exe 文件打开时不能正常工作?

Why does my python (exe file) not work correctly when opened as a exe file?

我有一个 python 文件,它很简单,可以从文本文件打开网页。它应该可以工作,甚至可以在视觉工作室中工作。 我决定使用 pyinstaller 将它变成一个 exe 文件。它很好地输出了一个 exe 文件,我打开了它,但它什么也没做,并在我打开它后立即关闭。

我使用了 Python 3 并在 Anaconda 中下载了 pyinstaller。谢谢

我的代码:

import webbrowser
print('Welcome to my project')
webfile = open('webfile.txt', 'r')
for lines in webfile:
    webbrowser.open(lines)

k = input('Press Enter to Exit')

大多数时候,当涉及到通过 pyinstaller 捆绑可执行文件读取文件时,您没有正确的文件路径。 这里有一些方法可以解决它:

  1. 输入文件的完整路径。请注意,当您想在另一台机器上使用可执行文件时,这将不起作用。例如使用 webfile = open('<full_path_to webfile.txt>', 'r')
  2. 由于捆绑应用程序后本地路径不同,因此您很可能必须使用 if 条件来设置预期文件的路径。 SO 上有很多答案 (here, ),它们将对此进行更详细的解释。

PS:在没有上下文管理器的情况下读取文件不是一个好习惯。 This 会解释原因。