我想写一个如下所示的字典: {' 2234':' 1',' 233':' 60'} 到已创建的新csv文件。 我找到了一个回答这个问题的页面,我在python 2.7中尝试了这个但是在执行我的代码时这仍然给我一个错误:
with open('variabelen.csv', 'w') as csvfile:
writer = csv.writer(csvfile)
for name, items in a.items():
writer.writerow([name] + items)
当我执行代码时,这显示为错误:
Traceback (most recent call last):
File "/Users/Danny/Desktop/Inventaris.py", line 48, in <module>
Toevoeging_methode_plus(toevoegproduct, aantaltoevoeging)
File "/Users/Danny/Desktop/Inventaris.py", line 9, in Toevoeging_methode_plus
writecolumbs()
File "/Users/Danny/Desktop/Inventaris.py", line 24, in writecolumbs
writer.writerow([name] + items)
TypeError: can only concatenate list (not "str") to list
答案 0 :(得分:1)
您正在使用字符串[name]
连接列表items
- 因此错误。
相反,您只需通过.writerows()
撰写items()
:
with open('variabelen.csv', 'w') as csvfile:
writer = csv.writer(csvfile)
writer.writerows(a.items())
鉴于a = {'2234': '1', '233': '60'}
的价值,它会产生variabelen.csv
,内容如下:
233,60
2234,1
行的顺序可能不同,因为Python中的词典是无序集合。