是否有一种标准方法可以确保 python 脚本将由 python2 而不是 python3 解释?在我的发行版中,我可以使用 #!/usr/bin/env python2 作为 shebang,但似乎并非所有发行版都提供“python2”。我可以显式调用 python 的特定版本(例如 2.6),但这会排除没有该版本的人。
在我看来,当发行版开始将 python3 作为默认 python 解释器时,这将成为一个越来越大的问题。
最佳答案
http://docs.python.org/library/sys.html#sys.version_info
使用 sys 模块,您可以确定正在运行的 python 版本并引发异常或退出或任何您喜欢的。
更新:
您可以使用它来调用适当的解释器。例如,设置一个为您进行检查的小脚本,并在 shbang 中使用它。它会检查正在运行的 python 版本,如果不是你想要的,就会寻找你想要的。然后它会在那个版本的 python 中运行脚本(或者如果没有发现任何好的东西就会失败)。
关于python - 有没有一种标准方法来确保 python 脚本将由 python2 而不是 python3 解释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3586776/