Pythonで定義の中にあるメソッドの辞書があります。このdef
は、オブジェクトを使用してクラスの外部で呼び出されます。 def
が呼び出されるたびに、辞書の最後の項目の結果が返されます。この場合、私はdef spc_summary:
の結果を返します。Pythonで辞書の値を取り出す方法は?
def setStyles(self):
# Assign function to file
functions = {
'app_server.php':self.app_server(),
'dcrm2nlyte.php':self.dcrm2nlyte(),
'export.php':self.export(),
'host_server.php':self.host_server(),
'spc.php':self.spc(),
'spc_approved.php':self.spc_approved(),
'spc_approved_by_dc.php':self.spc_approved_by_dc(),
'spc_by_dc.php':self.spc_by_dc(),
'spc_complete.php':self.spc_complete(),
'spc_summary.php':self.spc_summary()
}
filename = self.phpfile
functions.get(filename)
誰かがここで何が起こっているのか説明できますか?詳細が必要な場合はお知らせください。ありがとう!
詳細を追加してみましょう: functions.get(filename)
は、ファイル名が何であるかに関わらず最後の辞書項目を取り戻しています。私はこれをしました=>functions('spc.php')
と `def spc_summary 'の結果を返しました。そして、それらのdefのは同じ結果を持ってはいけません。
'functions'辞書の目的は何ですか? 'phpfile'の中に名前が格納されている関数を呼び出そうとしていますか? – hochl
'' spc_summary.php ':self.spc_summary() '行は、' 'spc_summary.php':self.spc_summary'や' functions.get(filename) 'のような括弧を使わずに' 'functions.get (filename)() ' –
ええ、それぞれのメソッド呼び出し**で辞書を構築している間に、それらのメンバ関数を効果的に呼び出すことができます。 – hochl