問題タブ [stringio]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
758 参照

python - このスクリプトで StringIO() は何に使用されていますか?

Django と Python を使い始めたばかりで、写真アプリを作成しようとしています。このスクリプトはサムネイルを生成しています。私はそれを自分でやりたいと思っています。残念ながら、私は何をしているのか理解していませんStringIO()。その場合、Python Docs はあまり役に立ちません。

StringIO()誰かがこの特定のケースで何をするのか説明してもらえますか?

http://djangosnippets.org/snippets/1172/から:

0 投票する
2 に答える
1138 参照

python - URL をエンコードするための urllib.urlencode の代替

XML のみを受け入れる API にリクエストを送信しようとしています。私はelementtree.SimpleXMLWriterXML ツリーを構築するために使用しており、それは StringIO オブジェクトに格納されています。それはすべて元気でダンディです。

問題は、API に送信するために StringIO オブジェクトを URL コード化する必要があることです。しかし、試してみると、次のようになります。

どうやらこれはPython の問題として議論されているようです。len()文字列を urlencoding するための他の組み込み関数、特にこの StringIO オブジェクトをエンコードできるように呼び出す必要のない組み込み関数があるかどうか疑問に思っています。

ありがとう!

PS: XML オブジェクトを格納するために StringIO 以外のものを使用することにオープンです。それがより簡単な解決策である場合。XMLを保存するために、ある種の「ファイル」が必要です。SimpleXMLWriter

0 投票する
1 に答える
2365 参照

c++ - swigを使用してpython StringIOをC ++ stringstreamに渡す

StringIO 変数を生成する Python コードがいくつかあります。stringstream パラメータを使用して、この変数を C++ 関数に渡したいと思います (C++ stringstream が python StringIO に最も近いと仮定して)。swig を使用してこの翻訳を行う簡単な方法はありますか?

swigモジュールには、いくつかのstringstreamコードを含むstd_sstream.iがあることがわかりますが、swigドキュメントでそれへの参照や、Web検索での使用例が見つかりません。

もう少しわかりやすくするために、いくつかの非常に単純なコードを以下に示します。これは修正済みで変更できない test.cpp です。

これも修正された test.h です。

これは、私が編集でき、C++ StTest 関数を呼び出す Python コードです (これを test_test.py と呼びます)。

したがって、上記のコメント行で StringIO から stringstream への変換を実行できるものを探しています。

これは、swig の test.i ファイルでの私の最初の掘り下げです。

「std_sstream.i」を test.i に含めました。これを使用する必要があると思います。何かを行うために、このファイルに何かを追加する必要がありますか?

現在、test_test.py を実行したときのエラー レポートは次のとおりです。

0 投票する
2 に答える
18292 参照

encoding - python3でのio.StringIOエンコーディング

io.StringIOPython3のデフォルトのエンコーディングが見つからないようです。ロケールと同じstdioですか?

どうすれば変更できますか?

を使用stdioすると、正しいエンコーディングで再度開くだけで機能するように見えますが、を再度開くなどのことはありませんStringIO

0 投票する
1 に答える
13600 参照

python - StringIO ハンドラへの Python ロギング

ログが適切に機能するかどうかをテストするpythonテストがあります。たとえば、ユーザーを作成する関数があり、最後にログがログ ファイルに応答を書き込みます。

私のテスト ケースでは、ログ出力を StringIO に送信したいと考えています。

問題は、ロガーが機能しているかどうかをテストする方法がわからないことです。

0 投票する
1 に答える
135 参照

python - 印刷コマンドが使用されているかのように、標準の出力メモリファイルを英語のテキストの文字列に変換します

存在することがわかっている特定のファイルに対してfindコマンドを実行しています。ファイルがどこにあるかを知っているとは思わないので、そのファイルへのパスを取得したいと思います。私の理解では、stdoutをリダイレクトし、コマンドを実行して出力をキャプチャし、標準出力を再接続してから、結果を取得する必要があります。結果を取得するときに問題が発生します...結果を解読できません:

必要なすべてのパスが見つかりました。問題は、paths_to_fileがこれを生成することです。

私はこれをどうしたらいいのか分かりません。私が欲しかったのは、printコマンドが提供するもののようなものでした。

その出力をファイルを開くために使用できるようにするにはどうすればよいですか?印刷コマンドの結果を取得できれば、必要なファイルを開くことができます。

見当違いの場合は、質問の方向を変えてください。ありがとうございました!

0 投票する
4 に答える
24148 参照

python - StringIO.close()を実行する必要がありますか?

いくつかのコード:

ドキュメントには次のように書かれています。

StringIO.close():メモリバッファを解放します。閉じたStringIOオブジェクトを使用してさらに操作を実行しようとすると、ValueErrorが発生します。

やらなければならないのですかbuffer.close()、それともバッファがスコープ外になり、ガベージコレクションが行われると自動的に発生しますか?

アップデート:

私はテストをしました:

結果:

0 投票する
2 に答える
1384 参照

python - StringIO の読み取りをブロックする方法はありますか

ドキュメントを検索して検索しましたが、 StringIO オブジェクトのブロックについては何も言われていません。

StringIO をラップするだけの独自のファイルのようなオブジェクトを作成できますが、それをブロックする最良の方法は何ですか? 私が知っている唯一の方法は、データが利用可能になるまで while ループと time.sleep(0.1) を使用することです。

0 投票する
4 に答える
3214 参照

python - ReportLab で生成された PDF に base64 でエンコードされた画像を含める

base64 でエンコードされた画像をデコードし、ReportLab を使用して生成した PDF に入れようとしています。私は現在、そのようにしています(image_database64でエンコードされた画像でstoryあり、すでにReportLabの話です):

そしてそれは機能します(それでも私には醜く見えますが)。一時ファイルを取り除くことを考えました (ファイルのようなオブジェクトでうまくいくのではないでしょうか?)。

モジュールを使用しようとした一時ファイルを取り除くために、StringIOファイルのようなオブジェクトを作成し、ファイル名の代わりにそれを渡します。

しかし、これにより、次のメッセージでIOErrorが表示されます:「画像ファイルを識別できません」。

ReportLab が PIL を使用して jpg とは異なる画像を読み取ることは知っていますが、名前付きの一時ファイルの作成を回避し、ディスクにファイルを書き込まずに、ファイルのようなオブジェクトのみでこれを行う方法はありますか?

0 投票する
2 に答える
24508 参照

python - Python で StringIO の read() を使用してデータを取得できない

Python2.7 バージョンを使用しています。以下は私のサンプルコードです。

上記のプログラムでは、getvalue() が "hello" を返すのに対し、read() は何も返しません。誰でも問題を解決するのを手伝ってくれますか? 私の次のコードには「n」バイトの読み取りが含まれているため、read() が必要です。