【发布时间】:2020-11-27 08:09:07
【问题描述】:
这就是我的数据的样子,
"col1"~"col2"~"col3"
"abcd"~"gsf~t"~"sddd~e~e"
"iob"~"gt~yu"~"ui~uo"
我需要将分隔符从 ~ 更改为 |@| 这是我使用的逻辑。
with open(input_path, 'rt',encoding='utf-8') as f:
reading_file = csv.reader(f, delimiter='~',quoting=csv.QUOTE_ALL)
with codecs.open(output_path,'w', encoding = "utf-8") as outFile:
delim='|@|'
for line in reading_file:
#stripped_line = line.strip()
temp = list(map(str, line))
res = delim.join(temp)
outFile.write(res +"\n")
outFile.close()
输出:
col1|@|col2|@|col3
abcd|@|gsf~t|@|sddd~e~e
iob|@|gt~yu|@|ui~uo
这对某些数据非常有效,但我的数据很大,大约 2gb。 由于我的数据在值中有分隔符,因此它被视为分隔符而不是值数据,因此产生的列值多于标题计数。 这就是这些行的数据拆分方式。
col1|@|col2|@|col3
abcd|@|gsf|@|t|@|sddd|@|e|@|e
iob|@|gt|@|yu|@|ui|@|uo
谁能帮帮我。
【问题讨论】:
标签: python-3.x text-files