0
これは重複する質問ではありません。既存の辞書に追加する必要があるため、新しい辞書を作成する必要はありません。Pythonで既存の辞書にタプルを挿入するには
results = dict()
if xxx:
(rslt_string, rslt_msg) = func1
(rslt_string, rslt_msg) = func2
(rslt_string, rslt_msg) = func5
if yyy:
(rslt_string, rslt_msg) = func3
(rslt_string, rslt_msg) = func5
if zzz:
(rslt_string, rslt_msg) = func2
(rslt_string, rslt_msg) = func5
# How do I add each tuple to the results dict with rslt_string being the key and rslt_msg being the value so that I can do this below?
# Overwriting is ok (good even) if identical key
for (name, msg) in results:
if msg is not "":
test_failed(name)
呼び出しステータスが動的であるいくつかのテスト関数の結果を集約するためのより良いPythonパターンがありますか?私の場合は、パーサーの結果を実行するためにいくつかのテストがあります。表現のタイプによっては、いくつかのテスト(メソッド)を実行する必要がありますが、他のテストは実行しないでください。私は実行時まで必要なものは何か分かりませんが、もしあればどれが失敗するかを記録したいと思います。うまくいく
ああ、私はタプルで直接(またはリスト)の更新を使用しようとしていました。ありがとう。 – BrianHVB
こんにちは@BrianHVBあなたの質問が解決された場合は、チェックマークをクリックして[受諾](http://meta.stackexchange.com/q/5234/179419)を検討してください。これは、あなたが解決策を見つけ出し、回答者とあなた自身の両方に評判を与えていることを広範なコミュニティに示します。これを行う義務はありません。 – Bharel
私が理解する限り、 'dict'はやや冗長です。' results.update((func1()、func2()、func5())) 'も動作します。 – bereal