私はカスタムクラスを持っていますが、これにはいくつかの文字列データがあります。ファイルハンドルの書き込みオブジェクトを使用して、この文字列データをファイルに保存したいと考えています。私は__str__()
を実装しているので、私はstr(myobject)
を行うことができます、私のオブジェクトを文字バッファオブジェクトにするためにPythonを作るための同等のメソッドは何ですか?オブジェクトを「文字バッファオブジェクト」にする
答えて
ライブラリコードでオブジェクトを使用しようとすると、ファイルに与える内容を書き込めると期待している場合は、file
のように動作する「ダックファイル」クラスを実装する必要があります。あなたのstringableオブジェクトをサポートします。残念なことに、file
は、Python 2.6以上で簡単にサブクラス化できるタイプではありません。ライブラリコードを期待どおりに動作させるには、ファイルプロトコル(write
、writelines
、tell
など)を十分に実装する必要があります。
ありがとう、str()はそれほど悪くないです。 – Matt
あり、単一の機能ではありませんが、それらの全範囲 -
は、なぜあなたはすでに文字列バッファである、StringIO.StringIO
をサブクラス化していないなど、read
、seek
?
私の質問に不満を抱いているかもしれませんが、私はカスタムオブジェクトを標準ファイル、標準のファイルハンドラを使用します。 – Matt
それから実際にサブクラス化したいのは 'file'です。それは奇妙な考えですが、あなたは本当に「ファイル」を持っていると確信していますか? – SingleNegationElimination
- 1. Pythonは文字バッファオブジェクトを期待しています
- 2. Pythonの例外TypeError:文字バッファオブジェクトを期待し、個人的な誤解
- 3. オブジェクトにvb.netの文字列
- 4. は、文字列オブジェクトに
- 5. [文字列、地図[文字列を、文字列]] jsオブジェクト
- 6. オブジェクトのベクトルに文字列を戻す
- 7. Spring統合で文字列オブジェクトを送信するときに文字列オブジェクトを送信するとき
- 8. オブジェクトを文字列で連結する
- 9. OpenCLのバッファオブジェクトとイメージバッファオブジェクト
- 10. オブジェクトが文字列
- 11. オブジェクトと文字列
- 12. オブジェクトが文字列
- 13. LINQオブジェクトをJSON文字列にシリアル化する - 巨大な文字列
- 14. オブジェクトを文字列配列
- 15. ASP.NET MVCのMocking Controller.Url.Action(文字列、文字列、オブジェクト、文字列)
- 16. オブジェクトの文字を知るためにnsstringオブジェクト
- 17. オブジェクトに渡すときに文字列をリークする
- 18. タイムスタンプ文字列をdatetimeオブジェクトに変換するには?
- 19. オブジェクトに動的に文字列を追加する[]
- 20. JSON文字列をjavascriptオブジェクトに変換するには?
- 21. オブジェクトを文字列に変換し、その逆にする
- 22. 日付文字列をNodaTimeオブジェクトに解析するには?
- 23. オブジェクトを文字列の辞書に保存するには?
- 24. Powershellのオブジェクトのプロパティを文字列にするには
- 25. SFrameのdateTimeオブジェクトへの文字列オブジェクト
- 26. pythonファイルのようなバッファオブジェクト
- 27. Java戻り文字列オブジェクト
- 28. jQueryのクエリ文字列オブジェクト
- 29. JavaScriptの文字列とオブジェクト
- 30. "予想される文字バッファオブジェクト"のエラーが発生しました。なぜか分かりません。
「fileObject.write(str(myobject))」のような何らかの理由がありますか? –
「文字バッファオブジェクト」の意味がわかりません。 Pythonがあなたのオブジェクトをファイルオブジェクトとして扱うようにしたいのですか? http://docs.python.org/library/stdtypes.html#file-objects – dpitch40
この種類のオブジェクトを書き込むのは一般的な使用例であり、冗長であるようです。 @ dpitch40 - TypeError:open( 'filename.ext'、 'w')を実行しているときに文字バッファオブジェクトが予想されました – Matt