(这个问题可能与“使用‘for’循环遍历字典”不同,因为我对每个键都有多个条目,而且还存在“指向”正确键的问题)。在
有一本空字典:
import .math
instruments = {}
以下简单方法将填充它:
^{pr2}$如果我们检查:
instruments.keys()
我们得到:[0.25, 0.5, 1.5, 1.0]
然后我想遍历字典,if coup == 0
,执行某些操作,否则执行其他操作:
for T in instruments.items():
(par, coupon, price, freq) = instruments[T]
if coupon == 0:
do_something
但是我得到了#KeyError: (0.25, (100, 0.0, 97.5, 2))
你知道我为什么要重新安排循环吗?蒂娅。在
T
是键,因此您应该使用for T in instruments
进行迭代:如果使用
for T in instruments.items()
,T
将成为(key, value)
的元组。当你寻找instruments[T]
时,dict中没有这样的键如果坚持使用
^{pr2}$items()
,也可以直接解包值元组:It输出:
相关问题 更多 >
编程相关推荐