嗨,想删除csv文件中的前导和尾随空格
24333, 116, 47,MCD,00000000000000000017996, 112
24333, 116, 47,MCD,00000000000000610036485, 112
24333, 116, 47,MCD,00000000000000610036485, 112
任何人都可以帮助我尝试的代码
import csv
csvfile= open('strip.csv','r')
csvfile1= open('strip11.csv','w')
stripped = (row.strip() for row in csvfile)
reader = csv.reader(stripped,delimiter=' ')
writer= csv.writer(csvfile1)
for row in reader:
writer.writerow(row)
最佳答案
魔术来自对每个行记录中的每个项目应用strip
。
剥离字符串通常像" abc ".strip
一样完成。要在没有实际字符串的情况下引用strip
方法,可以先import string
然后使用string.strip
。map(string.strip, list_of_strings_to_strip)
将strip
应用于记录中的每个项目,并将它们返回到列表中。
>>> import string
>>> rec = [" a ", " b ", " c "]
>>> map(string.strip, rec)
["a", "b", "c"]
您的数据的完整工作示例:
import csv
import string
with open("data.csv") as f:
reader = csv.reader(f, delimiter=",")
with open("stripped.csv", "w") as fo:
writer = csv.writer(fo)
for rec in reader:
writer.writerow(map(string.strip, rec))
所谓的
with open(...
是上下文管理器,用于确保创建的文件描述符将被关闭,而不考虑内部块执行期间可能发生的故障。结果文件如下所示:
24333,116,47,MCD,00000000000000000017996,112
24333,116,47,MCD,00000000000000610036485,112
24333,116,47,MCD,00000000000000610036485,112
关于python - 修剪csv文件中的前导和尾随空格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34857981/