問題タブ [repr]
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.
python - オブジェクトメモリアドレスへのアクセス
Pythonでメソッドを呼び出すと、次のobject.__repr__()
ようなものが返されます。
をオーバーロードした場合にメモリアドレスを取得する方法はありますか?それ__repr__()
以外に、それを呼び出しsuper(Class, obj).__repr__()
て正規表現しますか?
java - Pythonのrepr()に相当するJava?
Python の repr のように機能する Java メソッドはありますか? たとえば、関数の名前が repr であると仮定すると、
戻るだろう
いいえ
toString と同様です。
python - __str__ と __repr__ の違いは何ですか?
Pythonの__str__
との違いは何ですか?__repr__
apache-flex - ActionScript: Python の `repr` に相当するもの (つまり、オブジェクトの便利な文字列表現)?
Python のrepr
関数は素晴らしいです: オブジェクトの印刷可能な表現を返します。
たとえばrepr(["a'b", {1: 2}, u"foo"])
、文字列'["a\'b", {1: 2}, u\'foo\']'
です。たとえば、引用符が適切にエスケープされていることに注意してください。
では、ActionScript にこのようなものはありますか?
たとえば、今のところ:[1, 2, ["3", "4"]].toString()
は文字列"1,2,3,4"
… を生成しますが、これはあまり役に立ちません。のような文字列を生成したいのですが…そうですね'[1, 2, ["3", "4"]]'
。
JSON ライブラリの使用を検討しましたが、これは理想的とは言えません。これは、任意のオブジェクトのインスタンスをシリアル化しようとするためです。
python - %rの意味は何ですか?
%r
次のステートメントの意味は何ですか?
、、について聞いたことがあると思いますが%s
、聞いたことは%d
あり%f
ません。
python - __repr __()関数の最良の出力タイプとエンコード方法は?
最近、、、、およびエンコーディング __repr__()
で多くの問題が発生しました。の出力はエンコードする必要がありますか、それともユニコード文字列にする必要がありますか?Python の結果に最適なエンコーディングはありますか?出力したいのは非ASCII文字です。format()
__repr__()
__repr__()
私はPython2.xを使用しており、Python3に簡単に適応できるコードを記述したいと考えています。
ここに私を悩ませてきたいくつかの追加の問題があります、そして私はそれらを解決する解決策を探しています:
- UTF-8端末への印刷は機能するはずです(私はに
sys.stdout.encoding
設定しましUTF-8
たが、他の場合も機能するのが最善です)。 - 出力をファイル(UTF-8でエンコード)にパイプすることは機能するはずです(この場合は
sys.stdout.encoding
ですNone
)。 __repr__()
多くの関数の私のコードには現在多くのものがreturn ….encode('utf-8')
あり、それは重いです。頑丈で軽いものはありますか?- 場合によっては
return ('<{}>'.format(repr(x).decode('utf-8'))).encode('utf-8')
、オブジェクトの表現がデコードされ、フォーマット文字列に入れられてから再エンコードされるなど、醜い獣さえいます。私はそのような複雑な変化を避けたいと思います。
__repr__()
これらのエンコーディングの質問に関してうまく動作する単純な関数を書くために、あなたは何をすることをお勧めしますか?
c++ - T::iterator のエラー。テンプレート パラメーター T はベクトルである可能性がありますまたはリスト
一般的な STL コンテナー (ベクター、リストなど) の表現を出力する関数を作成しようとしています。関数に、たとえばベクトルを表すテンプレート パラメーター T を指定しました。タイプ T のイテレータを取得するのに問題があります。
...
...
コンパイラが提案したように「typename T::iterator」を試しましたが、より不可解なエラーしか発生しませんでした。
編集:助けてくれてありがとう!この機能を使用したい人のための作業バージョンは次のとおりです。
python - 永続オブジェクトと __repr__
__repr__()
永続化されたオブジェクトの関数を処理する最良の方法は何ですか? たとえば、データベース (リレーショナルまたはオブジェクト) の行を表すものです。
Python docs によると__repr__()
、オブジェクトを再作成する文字列をeval()
(大まかに) eval(repr(obj)) == obj
、または不正確な表現のブラケット表記で返す必要があります。通常、これは、オブジェクトによって再生成できないすべてのデータを文字列にダンプすることを意味します。ただし、永続オブジェクトの場合、オブジェクトの再作成は、データベースからデータを取得するのと同じくらい簡単です。
では、そのようなオブジェクトの場合、すべてのオブジェクト データまたは__repr__()
文字列内の主キーだけでしょうか?
python - When is the output of repr useful?
I have been reading about repr
in Python. I was wondering what the application of the output of repr
is. e.g.
When would one be interested in '<class __main__.A at 0x6f570>'
or'<__main__.A instance at 0x74d78>'
?
python - スタックフレームになる呼び出しを再現しますか?
repr
Python で特定のスタック フレームを生成する呼び出しの標準的な方法はありますか? それができない場合、手動で行う良い方法はありますか?
例として:
特定の呼び出しをログに記録しようとしており、ラップされた関数への呼び出しを完全な詳細でログに記録するデコレータを作成しています。私はこれについて間違っていますか?