Python 根据分米数拆分一根线
我有一个csv文件,它由5列组成,其中我只需要用管道(|)分隔符分隔的两列。以下是其中的几个:Python 根据分米数拆分一根线,python,string,crop,Python,String,Crop,我有一个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-16
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,45871104),在给定坐标的基础上裁剪后,我想用该行的第0个索引数据的名称保存文件,即(序列号).我必须对所有行执行此操作,有些行有多个坐标,坐标被-符号除
f = open("file.csv", "r")
coordinates = []
for line in f:
splitted = line.split("|")
for coor in splitted[2].split("-"):
coordinates.append((splitted[0], coor)
f.close()
这将为您提供作为元组列表的坐标 您可以获取
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']
对于此类问题,请停止使用
opencv
和image processing
标签!从你现在提出的四个完全相同的问题中可以清楚地看出,你最终想要实现什么。然而,这里提到的这个问题本身与OpenCV或图像处理无关。另外,不要忽略问题的答案。@HansHirse前面问题中的解决方案不起作用……然后在那里发表对该答案的评论,然后继续!不要在短时间内提出几乎相同的问题,反复使用错误的标签。例如,你没有回答回答者在前一个问题中的最后一句话。在写问题时,尤其是标题时,请省去所有的浮夸,如“我在这段时间遇到了麻烦”,“我想知道怎么做”把注意力集中在你的实际问题上@JamesZ@HansHirse如何根据(x、y、w、h)格式的坐标裁剪图像,并将裁剪后的图像保存在第1列(序列号、客户ID等)我基本上想把所有的片段保存在各自的文件夹中,画出csv文件中所有可用的区域坐标,并用命名约定保存文件。字段名作为文件名我收到错误。。。。。。。f=open(“page1_CA.csv”,“r”)坐标=[]表示f中的行:splitted=line.split(“|”)表示coor表示splitted[2]。split(“-”)表示坐标。append((splitted[0],coor)f.close()文件“”,第8行f.close()^SyntaxError:无效语法您应该查看缩进:如何根据(x、y、w、h)格式的坐标裁剪图像,并将裁剪后的图像保存到第1列(序列号、客户ID等)名称。我基本上希望将所有代码段保存在各自的文件夹中,绘制csv文件中可用的所有区域坐标,并使用命名约定保存文件。字段名称作为文件名正如您在日期行中所看到的,有三种不同的坐标,我也希望它们分别存在……我不相信这是您的问题陈述中的内容。你说可以有多组坐标,这不是你想用它们做的。但我对这个问题做了编辑。你不能让csv
一次注意到两个分隔符,所以你必须自己进行第二级分割。如何根据以(x、y、w、h)并用第一列(即序列号、客户ID等)名称保存裁剪后的图像。我基本上希望将所有片段保存在各自的文件夹中,绘制csv文件中可用的所有区域坐标,并使用命名约定保存文件。字段名作为文件名