使用python -c执行在命令行中作为字符串传递的python命令

kas*_*asa 24 python

是否可以使用python -c执行作为字符串传递的python命令?有谁可以举个例子.

Kev*_*vin 33

您可以使用-cPython来执行字符串.例如:

python3 -c "print(5)"

但是,似乎没有办法使用转义字符(例如\n).因此,如果您需要它们,请使用echo -eprintf代替管道.例如:

$ printf "import sys\nprint(sys.path)" | python3

  • `python3 -c "import sys; print(sys.path)"` 更简单。 (9认同)
  • @mattmc3 你不能用分号结束一个块(缩进会减少)。所以它更有限;例如,您不能创建一个函数然后实际调用它,或者使用 if-else,甚至一个 if 后跟无条件代码。但是(在可能的情况下)这更简单。 (3认同)

Ign*_*ams 15

对于您可以使用的单个字符串python -c.但是对于问题要求的字符串,你必须将它们传递给stdin:

$ python << EOF
> import sys
> print sys.version
> EOF
2.7.3 (default, Apr 13 2012, 20:16:59) 
[GCC 4.6.3 20120306 (Red Hat 4.6.3-2)]
Run Code Online (Sandbox Code Playgroud)

  • 我找到了答案.只需在终端上复制粘贴即可.python -c"import sys; x ='hello world'; print x;" (5认同)