Python 如何处理以逗号分隔毫秒的CSV时间戳
CSV行具有以下格式:Python 如何处理以逗号分隔毫秒的CSV时间戳,python,csv,Python,Csv,CSV行具有以下格式: timestamp,department,building,gender 2017-09-07 00:00:08,215,management,a,m 如您所知,分隔符是逗号问题是当迭代每一行并访问性别值(4列-当前行[3])时,我最终访问建筑值,因为时间戳的毫秒部分也被逗号分隔 为了解决这个问题,我遍历了每一行,并用替换了第一行,,这样时间戳就变成了一个值 但是以这种方式修改大型csv文件非常耗时。有没有有效的方法避免这种不必要的分离? 请注意,添加新标题值是不可接受
timestamp,department,building,gender
2017-09-07 00:00:08,215,management,a,m
如您所知,分隔符是逗号问题是当迭代每一行并访问性别值(4列-当前行[3]
)时,我最终访问建筑值,因为时间戳的毫秒部分也被逗号分隔
为了解决这个问题,我遍历了每一行,并用
替换了第一行,
,这样时间戳就变成了一个值
但是以这种方式修改大型csv文件非常耗时。有没有有效的方法避免这种不必要的分离?
请注意,添加新标题值是不可接受的将您的
分隔符
更改为|
,而不是,
任何工具提供的输出都是错误的。如果列中有逗号,该工具应将值放在引号内:
timestamp,department,building,gender
"2017-09-07 00:00:08,215",management,a,m
关于解决办法:
a) 无需修改CSV。只需将列定义更改为
timestamp, milliseconds, department, building, gender
b) 修复大型CSV并不耗时。使用正则表达式替换
search: ([^,]*),(.*)
replace: \1.\2
c) 由于您的工具不将值放在引号中,请尝试使用其他分隔符。另一个常见的是
代码>当前行[4]
将显示性别。