我有一个csv文件,我想编辑,所以我读文件和复制列表中的内容。列表包含重复项。所以我做了:
csv_in = list(set(csv_in))
但我得到:
不可修复列表错误
with open(source_initial2, 'r', encoding='ISO-8859-1') as file_in, open(source_initial3, 'w', encoding='ISO-8859-1',newline='') as file_out:
csv_in = csv.reader(file_in, delimiter=',')
csv_out = csv.writer(file_out, delimiter=';')
csv_in = list(set(csv_in))
for row in csv_in:
for i in range(len(row)):
if "/" in row[i]:
row[i] = row[i].replace('/', '')
if "\"" in row[i]:
row[i] = row[i].replace('\"', '')
if "Yes" in row[i]:
row[i] = row[i].replace('Yes', '1')
if "No" in row[i]:
row[i] = row[i].replace('No', '0')
if myrowlen > 5:
break
print(row)
csv_out.writerow(row)
清单是这样的
[['DCA.p/C.05820','5707119001793','p/C钢系列表面。。。QcK MINI,,'5,4','Yes'],['DCA.P/C.05820','570711901793','P/C钢系列SUR。。。QcK MINI“,”5,4“,”是“]…[”DCA.P/C.05820“,”570711901793“,”P/C钢系列SUR。。。QcK MINI,'5,4','是']]
为什么我会这样,我该怎么解决呢? 谢谢
csv.reader
包含行,其中从csv文件读取的每一行作为字符串列表返回。你知道吗虽然
set
对象要求其项是不可变的数据类型(因此^{hashable),但list
类型不是其中之一。你知道吗问题是
csv_in
是一个列表列表,而list不是可哈希的数据类型。为了解决这个问题,您可以执行以下操作:或者如果您需要它作为列表列表:
相关问题 更多 >
编程相关推荐