Частичное сопоставление текста в файле CSV только с использованием модуля CSV в python - PullRequest
0 голосов
/ 02 августа 2020

PROD_ID, МОДЕЛЬ, СТАТУС, ВЛАДЕНИЕ 201802, Honda, Среднее, DeakUIN 202002, Ertiga, Good, NorkU-IT 201702, Gips, Bad, DirkUNI 201703, Honda, Good, NorkU-IT 201704, Honda, Good, Nor- k 201705, Honda, Good, RibssT

Ох, понятно, я уточню свой вопрос.

Для приведенной выше таблицы у нас есть уникальный столбец «Prod ID». Поэтому мне нужно применить фильтр в файле csv, где Model == Honda и столбец Ownership содержит «* IT» OR « rk », а статус должен быть == «Good», и после применения всех фильтров ответ должен показывать только идентификатор продукта

PROD_ID 201703 201704

1 Ответ

0 голосов
/ 02 августа 2020

Я не уверен, что вы ищете, учитывая выражение регулярного выражения. Вы можете использовать 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

Если это не то вы хотите, пожалуйста, измените определение, измените свой вопрос, чтобы мы знали, чего вы пытаетесь достичь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...