python - 根据分隔符拆分字符串
问题描述
我有一个 csv 文件,它由 5 列组成,其中我只需要用管道(|)分隔符分隔的两列。以下是其中几个:
SERIAL_NO|N|1385,45,871,104|1|?
CUST_ID|N|1704,211,552,71|1|?
PROD_TYPE|A|367,286,1167,74|1|?
BRANCH_CODE|N|1892,429,254,74|1|?
BRANCH_NAME|A|682,412,774,72|1|?
DATE|N|2022,581,241,82-1863,581,137,75-1697,581,153,85|1|?
我只需要列表中的第 0 和第 2 索引数据,以便我可以根据给定的坐标将该数据提供给图像,我将在图像中进行裁剪,并使用与第 0 索引数据相同的文件名保存这些图像。
为了更清楚这里是我想要做的,我有一个坐标在 csv 文件中的图像(比如这个 1385,45,871,104),并且在根据给定坐标进行裁剪后,我想保存名称为 0th 的文件该行的索引数据是(SERIAL_NO)。我必须对所有行执行此操作,并且某些行有多个坐标,除以 - 符号。
解决方案
您可以让csv
模块在管道字符上为您拆分文件:
import csv
f = open("file.csv", "r")
reader = csv.reader(f, delimiter='|')
for row in reader:
print (row[0],":",row[2].split("-"))
输出是
SERIAL_NO : ['1385,45,871,104']
CUST_ID : ['1704,211,552,71']
PROD_TYPE : ['367,286,1167,74']
BRANCH_CODE : ['1892,429,254,74']
BRANCH_NAME : ['682,412,774,72']
DATE : ['2022,581,241,82', '1863,581,137,75', '1697,581,153,85']
推荐阅读
- javascript - 使用添加了 Javascript 的脚本标签获取站点信息
- python - Django:预取相关的多个反向关系
- typescript - 将应用程序的一部分分解到它自己的 NPM 包中会导致更大的整体应用程序大小
- excel - 将路径更改为单元格值
- python - 在 x 轴上移动频谱图
- qt - 错误:network_change_notifier_win.cc(157)] WSALookupServiceBegin 失败:8
- php - 使用 Laravel 播种 MongoDB 时的 authenticationDatabase 错误
- python - 如何获取在python中特定目录中修改文件的用户名或进程
- ios - 设置 TableView 单元格标签结构的数组
- java - 将位图大小调整为android中的特定高度