python - 告诉 csv 不要分隔 csv 行中的时间戳
问题描述
我目前正在尝试分离 csv 文件中的一些信息。所有信息都通过':'分隔。这是一个例子:
1234567890:0987654321234:Hino:Rei:Texas:07/12/2021 12:00:00 AM::
我正在尝试分离这些值,但我不想在日期之后包含时间戳。目前,我正在这样做:
read = csv.reader(csv_f, delimiter=":")
for row in read:
print(row)
我得到的输出是:
['1234567890', '0987654321234', 'Hino', 'Rei', 'Texas', '07/12/2021 12', '00', '00 AM', '', '']
我想要得到的输出是这样的:
['1234567890', '0987654321234', 'Hino', 'Rei', 'Texas', '07/12/2021', '12:00:00 AM', '', '']
有没有人有任何建议我可以解决这个问题?出于某种原因,我想到了 RegEx,但我不完全确定......
解决方案
作为您的问题的解决方法,您可以根据需要处理输出列表:
read = read[:-5] + read[-5].split()[0] + [":".join([read[-5].split()[1]] + [read[-4:-2]])]
请注意,这是基于数据格式的解决方法,因此您必须确保所有 csv 都遵循相同的模式。
推荐阅读
- python - PyQtGraph 打开它自己的窗口,而不是主应用程序窗口
- javascript - TypeError:无法读取未定义 0.1 的属性“地图”
- ruby-on-rails - 使用 capybara selenium 测试 vuetify on rails 项目
- python - Keras 序列序列
- mysql - 如何获取多个ID的子查询中的计数最大的行
- git - 在 Ansible 中将 git 存储库克隆到本地计算机
- android - 如何在 Android 上迭代 Firestore 集合?
- google-cloud-platform - 多个 Cloud SQL 代理
- c# - c# 导出到 excel 的 openxml 数据表在 windows 10 office 2019 的电子表格比较器实用程序中使用时导致修复
- sql - SQL Server 根据文件格式的顺序更新重复的文件记录