为什么print d.itervalues()不能执行,但print d.values()却能执行呢?
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
print d.itervalues()
sum = 0.0
for v in d.itervalues():
sum = sum + v
print sum / len(d)
以上代码执行结果为:
#print d.itervalues()未执行
78.25
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
print d.values()
sum = 0.0
for v in d.values():
sum = sum + v
print sum / len(d)
以上代码执行结果为:
[85, 74, 95, 59] #print d.values()执行
78.25
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
print d.itervalues()
print d.values()
执行结果为:
#print d.itervalues()未执行
[85, 74, 95, 59] #print d.values()执行