python中OrderedDict()中的iteritems()有什么问题?

时间:2011-08-11 16:12:08

标签: python python-2.6

这是我的OrderedDict词典:

 >>> dic = OrderedDict([('16-17,1,5,BUY,BUY,-6,9', 10), ('19-20,1,1,BUY,BUY,-1,1',1)])
 >>> dic
     OrderedDict([('16-17,1,5,BUY,BUY,-6,9', 10), ('19-20,1,1,BUY,BUY,-1,1', 11)])
 >>> for k,v in dic.iteritems():
 ...     print k
 ...     k1 = k.split(',')
 ...     print k1
 ...     print "value",v
 ...     print k1.append(v)
 ... 
 16-17,1,5,BUY,BUY,-6,9
 ['16-17', '1', '5', 'BUY', 'BUY', '-6', '9']
 value 10
 None
 19-20,1,1,BUY,BUY,-1,1
 ['19-20', '1', '1', 'BUY', 'BUY', '-1', '1']
 value 11
 None

为什么打印“无”?

2 个答案:

答案 0 :(得分:7)

因为append没有返回任何内容。

print打印k1.append(v)的返回值,但k1.append(v)没有返回值

答案 1 :(得分:2)

OrderedDict不是问题。

append会返回None,但会修改列表。所以你可以用

代替这行
k1.append(v)
print k1