Python の stdout 出力を文字列変数にリダイレクトするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-26 00:15:13
オリジナル
760 人が閲覧しました

How Can I Redirect Python's stdout Output to a String Variable?

Python で stdout 出力を文字列バッファにリダイレクトする

Python で ftplib を使用すると、一部の関数は文字列を返す代わりに情報を stdout に出力します。この出力を文字列変数で必要とする場合は、リダイレクトが必要です。

標準出力をメモリ内バッファにリダイレクトするには、次の解決策を検討してください。

from cStringIO import StringIO  # Python 2
# or from io import StringIO  # Python 3

import sys

# Save the original stdout object
old_stdout = sys.stdout

# Create a new StringIO object to capture stdout output
mystdout = StringIO()

# Redirect stdout to the new StringIO object
sys.stdout = mystdout

# Execute code that generates stdout output
# ...

# Restore original stdout
sys.stdout = old_stdout

# Access the captured stdout output
output = mystdout.getvalue()
ログイン後にコピー

このメソッドは StringIO を効果的にラップします。 stdout の周囲にバッファを配置し、実行後に出力を文字列としてキャプチャして操作できるようにします。

以上がPython の stdout 出力を文字列変数にリダイレクトするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート