6

重複の可能性:
Python は perl -pe と同等ですか?

stdin定型コードで設定せずに、特定の Python コマンドで の各行を処理する方法はありますか?

Perl を使用すると、次のようなことができます。

perl -pe '... command ...'

Pythonでも同じことができますか?

注:sed、awkなど、他の多くのツールでも同様のことが可能です...

4

2 に答える 2

8

この点で Python は Perl ほど便利ではありませんが、次のように-pを使用して Perl のフラグに近づけることができます。fileinput

python -c 'for ln in __import__("fileinput").input(): print ln.rstrip()' files...

これは、Perl のように自動的に順番にファイルを開くか、ファイルが提供されていない場合は標準入力を使用します。print任意の処理に置き換えます。有用なことを行うには複数の行が必要になる場合がありますが、ほとんどのシェルでは問題になりません。

rstripソース行からの改行とprintステートメントによって追加された改行の重複を避けるために必要であることに注意してください。行を印刷していない場合は、呼び出す必要はありません。

于 2012-09-04T08:47:03.150 に答える
-1

-cインタープリターオプションを試してください:

python -c "print 'cool'"
于 2012-09-04T08:46:18.460 に答える