Shell 踩坑:直接在 Shell 中直接执行 python 脚本需要使用 python -c 命令

avatar
作者
筋斗云
阅读量:0

Shell 中直接执行某个 python 文件 run.py 时,只需要执行命令:

python run.py 

但如果执行的是 python 脚本而不是文件,比如:

python "import numpy as np;a=np.array([1,2,3,4,5]);print(a);" 

这样会报错:

python: can’t open file ‘import numpy as np;a=np.array([1,2,3,4,5]);print(a);’: [Errno 2] No such file or directorypython: can’t open file ‘import numpy as np;a=np.array([1,2,3,4,5]);print(a);’: [Errno 2] No such file or directory

正确写法是:

python -c "import numpy as np;a=np.array([1,2,3,4,5]);print(a);" 

那么为什么需要使用 -c 呢?

  • -c 是一个选项(或称为参数),它告诉 python 命令从字符串中执行 Python 代码,而不是从文件中执行。
  • 如果不使用 -c 选项,python 命令默认会尝试执行一个 Python 脚本文件,其名称由后面的参数提供。在上面的例子上,不使用 -c 时,python 会执行 “import numpy as np;a=np.array([1,2,3,4,5]);print(a);”.py 文件,但显然没有这个文件。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!