問題タブ [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.
google-app-engine - appengine 上の Python: eval() のエラー
App Engine の webapp を使用しています。このリクエスト ハンドラーは、テキスト フィールドを含むフォームを出力します。送信すると、テキストが取得され、<h1>
で始まる行にタグが追加されます#
。以前repr()
は、テキストを行のリストに分割し、eval()
各行のテキストを分析することができましu'
たrepr()
。
コードの現在の方法では、次のエラーが表示されます。
line[0]
の代わりにだけを使用するeval(line)[0]
と、最初の行で機能しないことを除いて、すべて正常に機能します。最初の行が で始まっていても、最初の文字はではなく#
であるため、条件文は になります。それを回避しようとすると、そのエラーが発生します。この問題を回避するにはどうすればよいですか?else
u'
#
eval()
python - カスタム Python クラスのより良い __repr__ はどれですか?
__repr__
関数が返すことができる さまざまな方法があるようです。
多くのものを格納するクラス InfoObj がありますが、そのうちのいくつかは、クラスのユーザーが自分で設定することを特に望んでいません。私はPythonで何も保護されていないことを認識しており、とにかく飛び込んで設定することができますが、それを定義すると、__init__
誰かがそれを見て、それを渡しても問題ないと思い込む可能性が高くなります.
(例: オブジェクトが完全に取り込まれたと判断されたときに検証関数によって設定されるブール値と、そうするのに十分な情報が保存されているときに他の値から計算される値... たとえば、A = B + C のように 1 回A と B が設定され、次に C が計算され、オブジェクトが Valid=True とマークされます。)
以上のことから、__ repr__ の出力を設計する最良の方法はどれでしょうか?
...タイプCのポイントは、C++で「プライベート」に設定したすべてのものをコンストラクターへの引数として喜んで取り、クラスを使用するチームメイトにインターフェース関数を使用してそれをセットアップさせることです。彼らのために。その場合、次の目的のために、特定のものを取り込まないコンストラクターと、少し気づきにくい別の関数を定義します。__repr__
違いがある場合は、少なくともより良い方法を考え出さない限り、これらの python オブジェクトを出力を使用してデータベースに保存し、を使用して__repr__
取得することを計画しています。eval()
チームメイトが適切なインターフェイス機能を使用せずに完全なオブジェクトを手動で作成した結果、誰かが何をしたかを理解するまで、1 つのタイプの情報取得が不安定になる可能性があります。
python - `print hashlib.sha224(some_string).digest()`がその `repr()`と異なるのはなぜですか?
いくつかの文字列のハッシュをデータベーステーブルに保存したいと思います。そのために、varchar(64)タイプの列を作成しました。私は次のようなハッシュを生成します:
今私はそれを理解します
と同じではありません
(今では、との違いを知ってい>>> print 'test'
ます>>> 'test'
... :-))私は今どの部分を保存すべきか混乱しています。または他のrepr()
バージョン?
python - Python__repr__およびなし
私はPythonにまったく慣れていないので、現在__repr__
SqlAlchemyクラス用のを持っている必要があります。値を受け入れることができる整数列がNull
あり、SqlAlchemyはそれをに変換しNone
ます。例えば:
__repr__
SqlAlchemyが戻ったときに関数の「mystat」フィールドを表す正しい方法は何None
ですか?
python - Python の repr( ) 関数を理解する
repr()
: オブジェクトの評価可能な文字列表現 (「eval()」できます。これは、Python オブジェクトに評価される文字列表現であることを意味します)
言い換えると:
質問:
- すると二重引用符が表示されるのはなぜ
repr(x)
ですか? (私がそうするとき、私はそれらを手に入れませんstr(x)
) - オブジェクトである x ではなく、なぜ取得
'foo'
するのですか?eval("'foo'")
python - Python を難しい方法で学び、演習 10.4
これは私が演習のために書いたものです:
出力
質問
%r は、.py ファイルに記述した方法ですべてを出力するわけではありません (たとえば、1 行目の \"my\" ではなく "my" を出力します)。なんで?
python - pythonunittestがオーバーロードされた__repr__でアサーションに失敗する
私のコードでは、独自のreprメソッドを使用してクラスを定義しました。クラスの表現はリストである必要があります。
このメソッドをテストするために、次のユニットテストを作成しました。
ただし、アサーションエラーが発生します。
何が問題なのかわかりません...人間の目には[1]==[1]!reprメソッド(以下)で他のいくつかのバリエーションを試しましたが、それらもすべてエラーを返しました。
python - __repr__を作成してUnicode文字列を返す方法
次のよう__repr__()
にオブジェクトの関数を呼び出します。x
val = x.__repr__()
val
次に、文字列をSQLite
データベースに保存します。問題はそれval
がユニコードであるべきだということです。
私はこれを試しましたが成功しませんでした:
val = x.__repr__().encode("utf-8")
と
val = unicode(x.__repr__())
これを修正する方法を知っていますか?
使っていますPython 2.7.2
python - Pythonで、repr()などの関数をプロキシクラスで動作させるにはどうすればよいですか?
任意の型/クラスをファクトリメソッドに置き換えても、クラスオブジェクトのほとんどの機能を保持できるプロキシクラスを考案しました。これがどのように機能するかのサンプルです:
このファクトリメソッドの実装は、元のクラスオブジェクトを完全に置き換え、次のようなものを許可するため、気に入っています。
私が見つけた唯一の問題は、次のようなクラス自体の操作に関するものrepr()
です。
この例では、はではなくrepr()
呼び出しを試みています。変更を修正しようとしましたが、この場合、これは不可能であることがわかりました。str.__repr__()
type.__repr__(str)
str.__class__
誰かがrepr(str)
私がしていることを達成するための機能を復元する方法、またはおそらく別の方法を知っていますか?
python - Pythonで関数のreprを変更することは可能ですか?
__repr__
クラス定義でメソッドを設定する例を見ただけです。__repr__
定義内または定義後にfor関数を変更することは可能ですか?
私は成功せずに試みました...