python遍历csv文件匹配_比较CSV文件列中的条目并提取匹配的-python

通过Python遍历两个CSV文件,将file_1.csv中的数据转换为元组集合,然后比较file_2.csv中每行的前三列是否在集合中。如果找到匹配项,则打印或存储从第4列开始的值。最后提供了一个更优化的实现,使用集合和列表推导式来提高效率,并考虑了空格敏感性问题。
摘要由CSDN通过智能技术生成

尝试以下方法:import csv

file_1_tuples = []

with open("file_1.csv") as fh:

csv_reader = csv.reader ( fh )

for row in csv_reader:

file_1_tuples.append( tuple(row) )

with open("file_2.csv") as fh:

csv_reader = csv.reader ( fh )

for row in csv_reader:

if tuple(row[0:3]) in file_1_tuples:

print ( row[3:6] )

使用以下数据运行时:

file_1.csvperson, john, smith

person, anne, frank

person, bob, macdonald

fruit, orange, banana

fruit, strawberry, fields

fruit, ringring, banana

file_2.csvperson, john, smith, 1, 2, 3

person, anne, frank, 4, 5, 6

person, bob, macdonald, 7, 8, 9

它产生输出[' 1', ' 2', ' 3']

[' 4', ' 5', ' 6']

[' 7', ' 8', ' 9']

编辑:使用集合和列表理解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值