我正在尝试编辑一个包含400列数据,包含19列的CSV文件。有两列(第三列和第四列)列出了个人名称,列出名称的方式是“LastName,FirstName”。
C00431445,"P80003338","Obama, Barack","DUCLOS, DUNCAN","CHICAGO","IL","606601303","OBAMA FOR AMERICA","ACCOUNTING MANAGER",77.65,08-AUG-08,"","","","SA17A","753821","5433431","P2008",
这是有问题的,因为当我尝试使用逗号分隔符将此文件上传到MySQL时,它会将这两列的名称分成两半。我想使用Python 3.5来选择这两列并仅从其中删除逗号,而不删除其他行中的逗号。
在编码方面,我有点新手,感谢任何帮助。我知道可以使用.split()分割这些列然后合并它们没有逗号,但是我想要一个更清晰的方法,它可以直接从这个文件中删除逗号。
答案 0 :(得分:0)
使用csv模块进行读写
import csv
f = open('file.csv', 'rb')
reader = csv.reader(f)
your_list = list(reader)
f = open('file.csv', 'wb')
writer = csv.writer(f, delimiter=',', quotechar='"', quoting=csv.QUOTE_ALL)
for line in your_list:
line[2] = line[2].replace(",","")
line[3] = line[3].replace(",","")
writer.writerow(line)
答案 1 :(得分:0)
在MySQL中,将列读入@variables,然后在将它们存储到实际列中时对它们进行操作:
LOAD DATA ...
(id1, id2, @name1, @name2, ...),
SET name1 = REPLACE(@name1, ',', ''),
name2 = REPLACE(@name2, ',', '');