我不认为这是一个重复的问题,因为我需要添加到现有字典中,而不是创建一个新字典。
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模式来聚合调用状态为动态的某些测试函数的结果?在我的情况下,我有一些测试来运行解析器的结果。根据表达式的类型,应该运行一些测试(方法)而不是其他测试。我不知道在运行之前需要哪些,但我想记录哪些(如果有的话)失败。
答案 0 :(得分:1)
那会起作用:
results = dict()
if xxx:
results.update((func1(), func2(), func5()))
if yyy:
results.update((func3(), func5()))
if zzz:
results.update((func2(), func5()))
您可以更新results
dict,其中元组的第一个值是键,第二个值是值。