gpt4 book ai didi

python - 您如何跨多个操作系统手动告诉 Python 在脚本本身中使用哪个版本?

转载 作者:可可西里 更新时间:2023-11-01 11:33:45 25 4
gpt4 key购买 nike

我在 Windows 上安装了 Python 2.7 和 3.3,在 Linux 上安装了 Python 2.7 和 3.2mu。我如何使用版本 2.X 或 3.X 编写能够在 Windows 和 Linux 上使用的 Python 脚本?

我可能正在寻找几行代码来检查当前操作系统是什么,并在脚本的其余部分所在的任何目录中使用 Python 3.X。

我的思路是这样的:

if operating_system == Windows:
run rest of script with C:\python_directory3.X\python
elif operating_system == Linux:
run rest of script with /usr/bin/python3.X

是否存在这样的代码,或者我是否必须为两个操作系统制作不同的脚本?

最佳答案

在 UNIX 系统上,Python commands should be named as prescribed in PEP-394 ,所以使用 shebang 是最好的解决方案:

#!/usr/bin/env python2

#!/usr/bin/env python3

适当的时候,在你的文件的顶部。

在 Windows 下,它的定义不太明确。从 3.3 版开始,a launcher应包含在 Python 中,如 PEP-397 中所述.但是,这对旧版本没有帮助。

如果您想在 Windows 下确定,许多人使用 py2exe、Cx_Freeze 或其他类似工具来生成包含解释器的可执行文件。在某些情况下,这可能是一个有效的解决方案。

一个好主意是在你的代码中添加一个检查(检查解释器的版本),并给出一个清晰、易于理解的消息,说明他们使用了错误的 Python 版本,也许还有一个关于如何使用的链接解决那个问题。这不会神奇地解决任何问题,但这意味着如果所有其他方法都失败了,用户有机会了解出了什么问题。

关于python - 您如何跨多个操作系统手动告诉 Python 在脚本本身中使用哪个版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16740574/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com