Python で「print >>」は何をしますか? [重複] 質問する

Python で「print >>」は何をしますか? [重複] 質問する

print >>Python 2 のコードを Python 3 に翻訳する必要がありますが、何が行われるのか、Python 3 ではどのように記述すればよいのかがわかりません。

print >> sys.stderr, '--'
print >> sys.stderr, 'entrada1: ', entrada1
print >> sys.stderr, 'entrada2: ', entrada2
print >> sys.stderr, '--'

ベストアンサー1

この>> sys.stderr部分は、printPython 2 でステートメントを stdout ではなく stderr に出力します。

引用するとドキュメンテーション:

printには、上記の構文の 2 番目の部分で定義される拡張形式もあります。この形式は、「印刷シェブロン」と呼ばれることもあります。この形式では、 の後の最初の式は、>>「ファイルのような」オブジェクト、具体的には、上記のメソッドを持つオブジェクトに評価される必要がありますwrite()。この拡張形式では、後続の式はこのファイル オブジェクトに印刷されます。最初の式が に評価された場合None、 はsys.stdout出力用のファイルとして使用されます。

Python 3ではfileprint()関数:

 print("spam", file=sys.stderr)

おすすめ記事