os.execv(sys.executable) 使用了错误的 Python 版本
发布时间:2022-07-08 03:55:13 347
相关标签: # python# 脚本
我想从内部重新启动脚本。但是在 Linux 上会os.execv忽略sys.executable并回退到默认的 python 版本 2.7。
这是一个最小的运行示例:
import os
import sys
print(sys.executable,sys.version)
os.execv(sys.executable,["python"] + sys.argv)
这是的输出python3 main.py
(python3指的是默认的python 3 exe):
> /usr/local/bin/python3.8 3.8.0 (default, Jun 1 2022, 16:03:28) [GCC 8.3.0]
> /usr/bin/python 3.8.0 (default, Jun 1 2022, 16:03:28) [GCC 8.3.0]
> ('/usr/bin/python', '2.7.16 (default, Oct 10 2019, 22:02:15) \n[GCC 8.3.0]')
> ('/usr/bin/python', '2.7.16 (default, Oct 10 2019, 22:02:15) \n[GCC 8.3.0]')
> ('/usr/bin/python', '2.7.16 (default, Oct 10 2019, 22:02:15) \n[GCC 8.3.0]')
...
我不太明白什么部分需要改变,什么地方出了问题/我做错了吗。
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报