python -cを使用して文字列として渡されたpythonコマンドを実行することはできますか?誰かが例を挙げることができます。pythonをコマンドラインで文字列として渡して実行する-c
答えて
単一文字列python -c
を使用できます。しかし文字列のための質問が尋ねると、あなたが標準入力に渡す必要があります。
$ 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)]
答えが見つかりました。これを端末に貼り付けてコピーしてください。 python -c "import sys; x = 'hello world'; print x;" – kasa
これは* a *文字列です。あなたが*文字列*を望むなら、あなたはstdinにそれらを与える必要があります。 –
Pythonはeval
を持っています。このスクリプトを試してみてください。
import sys
str = sys.argv[1]
eval(str)
はこのようにそれを起動します。
$ python3 eval.py 'print(1 + 1)'
2
あなたはPythonは文字列を実行するために取得するために-c
を使用することができます。たとえば:
python3 -c "print(5)"
しかし、エスケープ文字(例えば\n
)を使用する方法があるようには思えません。だから、必要ならばecho -e
またはprintf
のパイプを使用してください。たとえば:
$ printf "import sys\nprint(sys.path)" | python3
は、あなたがこれまでにしようとしているものを私たちと共有することはできますか? – Levon
実際には、私はpython -c ""形式を使用する方法を探していました。 – kasa