仅使用python中的CSV模块对CSV文件中的文本进行部分匹配

2024-10-03 00:32:09 发布

您现在位置:Python中文网/ 问答频道 /正文

产品ID、型号、状态、所有权 201802,本田,平均,迪肯 202002,埃尔蒂加,很好,诺库 201702,Gips,巴德,迪库尼 201703,本田,好,诺库IT 201704,本田,好,诺尔k 201705,本田,好,RIBST

哦,我明白了,我会详细说明我的问题

对于上表,我们有一个唯一的“Prod ID”列。 因此,我必须在csv文件中应用过滤器,其中型号==本田,所有权列包含“*IT”或“rk”,状态应为==“良好”,一旦应用所有过滤器,答案应仅显示产品ID

产品标识 201703 201704


Tags: 文件csv答案id过滤器产品状态it
1条回答
网友
1楼 · 发布于 2024-10-03 00:32:09

考虑到正则表达式,我不确定您在寻找什么。 您可能希望使用all(),以消除IF语句中的表达式。使用中的可以在字符串中搜索部分匹配或完全匹配

import csv

with open("Report.csv", 'r') as file:
    csv_file = csv.DictReader(file)
    for row in csv_file:
        if all([row['MODEL'] == 'Honda', row['STATUS'] == 'Good', "ork" in row['OWNERSHIP']]):
            print(row)

代码打印给定输入的行:

PROD_ID,MODEL,STATUS,OWNERSHIP
201802,Honda,Average,DeakUIN
202002,Ertiga,Good,NorkUIT
201702,Gips,Bad,DirkUNI
201702,Honda,Good,NorkUIT

如果不是您想要的,请重新定义并修改您的问题,以便我们了解您想要实现的目标

相关问题 更多 >