首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将参数传递给通过管道传递给标准输入上的Python解释器的脚本?

如何将参数传递给通过管道传递给标准输入上的Python解释器的脚本?
EN

Stack Overflow用户
提问于 2020-12-09 23:45:53
回答 1查看 67关注 0票数 2

我正在使用get-poetry.py脚本安装poetry,并且我想指定要安装的版本。要安装最新版本,请执行以下操作

代码语言:javascript
复制
GET_POETRY_URL=https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py
curl -sSL $GET_POETRY_URL | python

get-poetry.py脚本接受参数--version,但如何传递该参数呢?

代码语言:javascript
复制
curl -sSL $GET_POETRY_URL | python --version 1.1.4

打印已安装的python版本,而不是将参数传递给get-poetry.py脚本。我可以将脚本保存到一个文件中,然后以这种方式调用它,但我是在docker映像中执行此操作的,我不想在之后清理它。

EN

回答 1

Stack Overflow用户

发布于 2020-12-09 23:45:53

代码语言:javascript
复制
curl -sSL $GET_POETRY_URL | python - --version 1.1.4

调用python时使用-作为脚本位置将导致从标准输入中读取。通常,脚本位置后的任何参数都会传递给脚本:

代码语言:javascript
复制
$ echo "import sys; print(sys.argv)" | python - --version 1.1.4
['-', '--version', '1.1.4']

使用-来表示标准输入也适用于许多其他unix工具:

代码语言:javascript
复制
$ echo hello | cat -
hello
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65220073

复制
相关文章

相似问题

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