在mac Big Sur v 11.6上,终端不允许我使用Python运行任何内容



我刚刚安装了python 3.10,我遵循了一个教程,该教程告诉我创建一个别名,这样预装的2.7.6就不会运行了。我试着用

nano ~/.bash_profile

并添加

alias python="python3" 

但这不会改变我的版本。

然后我尝试使用

nano ~/.zprofile

并添加

alias python="python3"

现在,每当我运行一个简单的python文件,试图执行print("helloworld"(时,它都会出现SyntaxError:无效的十进制文字。python代码中没有变量。

@Carters-MBP ~ % python3 Desktop/intro.p.py
File "/Users/carternetzley/Desktop/intro.p.py", line 1
Python 3.10.6 (v3.10.6:9c7b4bd164, Aug  1 2022, 17:13:48) [Clang 13.0.0 (clang-1300.0.29.30)] on darwin
^
SyntaxError: invalid decimal literal

有什么想法吗?

下面是Opinionated答案。。。

不要为Python使用别名。它们工作不太好:

IDE中的
  • ,或
  • cron作业或
  • 子流程或非交互式登录

删除所有Python别名并重新启动计算机。

使用type命令可以了解执行命令时实际运行的内容。因此,如果您想知道在执行python3时shell实际运行的内容,请使用:

type python3

如果您想知道在执行python时您的shell将运行什么,请使用:

type python

你的外壳没有"防止">你什么都跑!它只是运行PATH中的第一个匹配的东西。

因此,如果您在/Applications/Python3.10/bin/python上安装了Python 3.10,只需将PATH设置为:

export PATH=/Applications/Python3.10/bin:$PATH

问题都在您的文件中。intro.p.py中的内容不是Python脚本,而是终端会话的转录本。它包括Python头行,当然这不是有效的代码。您需要编辑该文件并使其成为Python脚本。

相关内容

最新更新