Поиск названий продуктов и описание продукта в CSV для фильтра вольт с помощью регулярных выражений, что я пытаюсь сделать, это удалить повторяющиеся значения из моего поиска.Я пытался установить список и т.д. Я пытаюсь понять, почему я не могу удалить повторяющиеся слова из моего поиска.не понимая, как работает множество, кажется, что все значения разбиты на характеры 1,2,, v, o, l, t, можно ли не просто удалить все повторяющиеся слова в найденном?когда я запускаю код, я получаю:
12 Volt
12 Volt
40 Volt
2 Volt
18 Volt
18 Volt
240 Volt
240 Volt
110 Volt
110 Volt
110 Volt
36 Volt
Что мне нужно, и я изо всех сил пытаюсь добиться, это уникальный список значений IE 12 Вольт, 40 Вольт, 18 Вольт, 240 Вольт и т. д. и т. д.
def volts_search():
with open('filters/volts_filter.csv', 'w') as headerOut:
headerOut.write("name" + "," + "sort_order" + "," + "status" + "," + "image" + "," + "regex" + "," + "value" + "\n")
with open(merchant_feed, 'r') as csv_filein, open('filters/volts_filter.csv', 'a') as fileOut:
reader = csv.DictReader(csv_filein, delimiter=',', quotechar='"')
for row in reader:
program_name = clean_text(row['program_name'])
product_name = clean_text(row['product_name'])
product_description = clean_text(row['description'])
merchant_category = clean_text(row['merchant_category'])
product_id = row['product_id']
product_brand = clean_text(row['brand'])
filter_name = "Filter By Volts:"
v = re.findall(r"((?i)(?:)\d+\.\d+v|\d+\.\d+ v|\d+ v|\d+v)", product_name + product_description)
volt = re.findall(r"((?i)(?:)\d+volt|\d+ volt)", product_name + product_description)
volts = re.findall(r"((?i)(?:)\d+\.\d+volts|\d+volts)", product_name + product_description)
seen = set()
for filter_search in volt:
if filter_search in product_name + product_description:
if filter_search in seen: continue
seen.add(filter_search)
print(filter_search)