Моя цель - написать функцию, которая выполняет итерацию по CSV-файлу и достигает следующего:
- Принимает ключевое слово, представляющее собой список строк, и возвращает все связанные коды, имеющиеключевое слово 'в описании.
Пример форматирования файла CSV:
"2399", "1", "theft-bike", "Bicycle"кража "
Например:
- find_that_code (['bike'])
- find_that_code (['bike', 'scooter'])
Вывод :
- [2399]
- []
Явозникают трудности с выяснением того, как скомпоновать оператор IF, который соответствует строкам в списке ключевых слов, в строке [3].
Для примеров вы заметите, что во втором примере ничего не выводится, хотя строка bike являетсянастоящее время струнного скутера нет.
То, что я пробовал:
def find_that_code(keywords):
codelist = []
keywords = str(keywords)
with open('codes.csv') as csv_file:
reader = csv.reader(csv_file, delimiter=',')
next(reader) # skip the first row
for row in reader:
if row[3] == any([x in keywords for x in keywords]):
code = row[0]
return True
else:
return False
В настоящее время у меня есть код, возвращающий True или False, чтобы выяснить, где моя проблема.Но как только я получу, как сопоставить строку из списка ключевых слов со строкой [3] в CSV, я смогу завершить оставшуюся часть.
Спасибо за ваше время, и я очень ценюсоветы.