【发布时间】:2013-04-13 07:11:06
【问题描述】:
有人能指出我哪里出错了吗,这里到底发生了什么,除了 continue 或解决这个问题的更好方法。
dic = {'arun': 123213, 'hari': 31212, 'akila': 321, 'varun': 12132, 'apple': 3212}
u1 = {'arun': 123123, 'orange': 1324214}
u2 = {'akila': 1234124, 'apple': 123123}
u3 = {'hari': 144}
u4 = {'anna': 23322}
for key, value in dic.iteritems():
try:
A = u1[key]
B = u2[key]
C = u3[key]
D = u4[key]
except KeyError:
continue
print A, B, C, D # fails to print
【问题讨论】:
-
你期待什么结果?
-
@Kevin 显示字典 dic 中每个键(词)的 dicts u1、u2、u3 和 u4 的匹配值
-
如果您想查看一些结果,请使用
pass而不是continue。 -
@AshwiniChaudhary:那是个坏主意。如果他第一次遇到异常,
pass会给他一个NameError;如果他在第一次通过后遇到异常,pass将导致他打印出上一个循环中的值…… -
@AshwiniChaudhary pass 不能解决我的问题
标签: python exception dictionary python-2.7