【发布时间】:2020-03-06 04:21:07
【问题描述】:
我有以下 csv 文件,我想将其转换为输出,基本上它读取第一列值作为键,然后将下一个值附加到列中
input.csv
a.jpg,a,b
a.jpg,c,d
b.jpg,e,f
b.jpg,g,h
c.jpg,i,j
c.jpg,k,l
c.jpg,m,n
c.jpg,o,p
c.jpg,q,r
d.jpg,s,t
d.jpg,u,v
e.jpg,w,x
e.jpg,y,z
输出.csv
a.jpg a,b c,d
b.jpg e,f g,h
c.jpg i,j k,l m,n o,p q,r
d.jpg s,t u,v
e.jpg w,x y,z
我尝试了以下方法,但仍然不知道如何根据上面所需的格式解压缩值以输出 csv
import csv
with open('input.csv', 'r', newline='') as input_csv, open('output.csv', 'w', newline='') as output_csv:
filename = {}
for row in csv.reader(input_csv):
if row[0] not in filename:
filename[row[0]]=[[row[1],row[2]]]
else:
filename[row[0]].append([row[1],row[2]])
for item in filename.items():
print(item)
输出
('a.jpg', [['a', 'b'], ['c', 'd']])
('b.jpg', [['e', 'f'], ['g', 'h']])
('c.jpg', [['i', 'j'], ['k', 'l'], ['m', 'n'], ['o', 'p'], ['q', 'r']])
('d.jpg', [['s', 't'], ['u', 'v']])
('e.jpg', [['w', 'x'], ['y', 'z']])
【问题讨论】:
-
你反对使用 pandas 来修改 .csv 文件吗?
-
@KaranShishoo 不是真的,我仍在尝试使用 python 字典