猿问

Python 函数未从 cmd 运行,已定义路径变量且 Python 控制台正常运行

  1. 我在 Windows 10 机器上使用 python 3.6.8。我已将 python 添加到 PATH 环境变量中,并且 python 控制台可通过命令提示符运行。

  2. 我已经编写了一个简单的 hello world 脚本,可以使用 pyinstaller 将其转换为 exe。这很好用。

  3. 问题是当我将相同的代码包装在一个main()方法中(下面的代码),然后创建 exe 文件时,cmd 的打开和关闭速度非常快。

我首先尝试使用 python 3.7.1 和 (2) - (3) 如上所述根本不起作用。然后我将我的 python 版本降级到 python 3.6.8 并且 (2) 得到了解决,但是 (3) 仍然是一个问题。代码 (3) 可以通过 Windows 命令提示符使用 执行python -c "import main; print(main.main())",因此代码本身没有问题。

上面定义的(2) 的源代码( hello.py)

print("Hello World")
input("Press any key to exit")

(3) ( main.py) 的源代码:

def main():
  print("Hello World")
    input("Press any key to exit")

使用 PyInstaller 创建(2)

  • 导航到源目录。

  • Shift + Right Click 并在此处选择命令窗口。

  • pyinstaller --onefile hello.py

使用 PyInstaller 创建(3) ( main.py):

  • 导航到源目录。

  • Shift + Right Click 并在此处选择命令窗口。

  • pyinstaller --onefile main.py

我的问题有解决方案吗?我编写了一个小游戏作为一个项目,我想让该游戏在 Windows 上可执行(版本 1.0.0),用户不需要安装 python。


茅侃侃
浏览 193回答 1
1回答

潇潇雨雨

您实际上并没有在代码中调用 main() 。将此添加到底部。def main():  print("Hello World")  input("Press any key to exit")if __name__== "__main__":  main()
随时随地看视频慕课网APP

相关分类

Python
我要回答