是否可以使用python -c执行作为字符串传递的python命令?可以有人举个例子。
答案 0 :(得分:28)
您可以使用-c
让Python执行字符串。例如:
python3 -c "print(5)"
但是,似乎没有办法使用转义字符(例如\n
)。因此,如果您需要,请使用echo -e
或printf
中的管道。例如:
$ printf "import sys\nprint(sys.path)" | python3
答案 1 :(得分:13)
对于单个字符串,您可以使用python -c
。但是对于问题要求的 strings ,你必须将它们传递给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)]
答案 2 :(得分:0)
Python有eval
。试试这个剧本。
import sys
str = sys.argv[1]
eval(str)
像这样调用它:
$ python3 eval.py 'print(1 + 1)'
2