【问题标题】:How to update Python 2.7 to 3 in terminal如何在终端中将 Python 2.7 更新为 3
【发布时间】:2019-01-30 18:28:13
【问题描述】:

我正在尝试通过我的 mac 上的终端运行 python3 脚本,但每次执行文件时,终端都会使用 Python 2.7,尽管安装了 3.7。

我在其他线程中读到 python3 可以通过使用“python3”命令运行,但这似乎将我加载到每行开头的“>>>”的 python 语法中

有没有办法在使用终端本地语法的同时运行 python 3?

或者作为最后的手段,从 python 语法运行 .py 文件的命令是什么?

【问题讨论】:

  • python3 a.py 必须工作
  • 我认为你只是在输入没有文件名的 python3,所以只需将你的命令更改为 python3 myprogram.py

标签: python python-3.x python-2.7 terminal


【解决方案1】:
  1. 安装 ppa

sudo add-apt-repository ppa:deadsnakes/ppa

  1. 更新包

sudo apt-get update

  1. 将 python 2.x 升级到 python 3.x

sudo apt-get install python3.6

更改默认 python

sudo rm /usr/bin/python

sudo ln -s /usr/bin/python3 /usr/bin/python

检查默认版本

python -V

【讨论】:

    【解决方案2】:

    要在 python3 中从终端运行 python 脚本,请使用:

    python3 python-file.py
    

    如果你想这样写python python-file.py,你必须使用命令创建一个从/usr/bin/python/usr/bin/python3的符号链接(只有在你知道自己在做什么的情况下才这样做):

    ln -s /usr/bin/python3 /usr/bin/python
    

    如果您想使用./python-file.py 运行文件,您必须在文件顶部添加"shebang"

    #!/usr/bin/env python3
    

    【讨论】:

    • 我强烈建议不要将 /usr/bin/python 从版本 2 更改为 3,除非您非常清楚自己在做什么。它可以破坏许多脚本。
    • 更好的shebang线路是#!/usr/bin/env python3
    • 这正是我要问的!谢谢你
    • 附带说明,arch 和 fedora 已经将 /usr/bin/python 作为 python3 (Arch 自古以来,fedora 最近出现)
    猜你喜欢
    • 1970-01-01
    • 2019-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-27
    • 1970-01-01
    • 2013-09-16
    • 2019-07-27
    相关资源
    最近更新 更多