需要超过0个值才能解压缩

时间:2014-08-07 05:18:08

标签: python dictionary

我有一些代码:

text = ''
for key, value in d:
    text += k + ' ' + str(v) + '\n'
file = open('ATM Data', 'w')
file.write(text)
file.close()

当它运行时它会引发一个

ValueError: need more than 0 values to unpack

但实际上我的字典中确实有一些东西。 有人可以帮忙吗?

2 个答案:

答案 0 :(得分:3)

如果d是字典,那么您必须使用d.items()d.iteritems()key, value作为字对。

答案 1 :(得分:0)

字典的迭代器只迭代键,因此您可以使用items(可移植),或者只是遍历键并获取值:

for key, value in d.items():
    text += key + ' ' + str(value) + '\n'

for key in d:
    text += key + ' ' + str(d[key]) + '\n'

请注意,使用带有生成器表达式的join可以获得更高的性能:

text = '\n'.join('{} {}'.format(key, value) for key, value in d.items()) + '\n'