首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的系统运行python2,尽管我努力运行python3?

为什么我的系统运行python2,尽管我努力运行python3?
EN

Stack Overflow用户
提问于 2021-03-16 19:40:03
回答 1查看 68关注 0票数 2

我在运行从Android存储库下载的脚本时遇到了困难。基于相关问题和我自己的测试,我确信问题在于,在为Python2编写Python3时,它正在被解释。

下面是我试图用我自己的脚本来再现这个问题的尝试:

代码语言:javascript
复制
#!/usr/bin/env python3

# test.py
import sys
print('hello', file=sys.stderr)

下面是测试步骤:

代码语言:javascript
复制
$ alias python=python3
$ python --version
Python 3.6.9
$ python test.py
hello
$ unalias python
$ python --version
Python 2.7.17
$ python test.py
  File "test.py", line 5
    print('hello', file=sys.stderr)
                       ^
SyntaxError: invalid syntax

令人困惑的是,虽然这个测试按预期执行,但当我使用repo试图安装时,尽管运行了alias python=python3,我还是得到了SyntaxError (从本质上讲是相同的脚本行)。( shebang似乎不会影响测试或主要脚本。)

我遗漏了什么?如何使用正确版本的python3运行此脚本?并且假设有一个解决办法,我如何清理之后,以便我的系统的其他部分仍然可以访问python2时,它想要吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-16 19:45:35

alias只更改直接输入到shell中的命令的解释。因此,repo不受影响,因为它不会将python命令键入到shell中。

通常,运行与系统不同的Python配置的最佳方法是使用virtualenvs。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66662292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档