repr()関数はPythonオブジェクト指向プログラミングで何をしますか?
Pythonの公式ドキュメントには、オブジェクトの「公式」文字列表現を計算するために__repr __()が使用されていると記載されています。 repr()組み込み関数は、__ repr __()を使用してオブジェクトを表示します。 __repr __()は、オブジェクトの印刷可能な表現を返します。これは、このオブジェクトを作成するための方法の1つです。 __repr __()は開発者にとってより便利ですが、__ str __()はエンドユーザーにとって便利です。
次のコードは、__ repr __()の使用方法を示しています。
class Point: def __init__(self, x, y): self.x, self.y = x, y def __repr__(self): return 'Point(x=%s, y=%s)' % (self.x, self.y) p = Point(3, 4) print p
Point(x=3, y=4)
repr()関数の別の使用例を検討し、日時オブジェクトを作成しましょう-
>>> import datetime >>> today = datetime.datetime.now()
>>> repr(today) 'datetime.datetime(2012, 3, 14, 9, 21, 58, 130922)'
これは文字列を返したことがわかりますが、この文字列は日時オブジェクトの「公式」表現です。つまり、この「公式」文字列表現を使用してオブジェクトを再構築できます-
>>> eval('datetime.datetime(2012, 3, 14, 9, 21, 58, 130922)') datetime.datetime(2012, 3, 14, 9, 21, 58, 130922)>
eval()組み込み関数は文字列を受け入れ、それを日時オブジェクトに変換します。
-
raw_input()関数はPythonで何をしますか?
関数raw_input()は、ユーザーにプロンプトを表示し(raw_input([arg])のオプションの引数)、ユーザーから入力を取得し、ユーザーが入力したデータをストリング。たとえば、 name = raw_input("What is your name? ") print "Hello, %s." % name これはinput()とは異なり、後者はユーザーからの入力を解釈しようとします。通常は、input()を避け、raw_input()とカスタムの解析/変換コードを使用するのが最善です。
-
Pythonでreload()関数は何をしますか?
関数reload(moduleName)は、以前にロードされたモジュールをリロードします(構文 import moduleNameでロードしたと仮定します。これは、ソースファイルを編集した会話用です。モジュールであり、Pythonを終了して再起動せずにテストしたい場合。たとえば、 >>> import mymodule >>> # Edited mymodule and want to reload it in this script >>> reload(mymodule) moduleNameはモジュールの実際の名前であり、その名前を