Я новичок в python и обрабатываю текстовый файл с регулярными выражениями для извлечения идентификаторов и добавления списка. Я написал некоторый python ниже, намереваясь создать список, который выглядит следующим образом:
["10073710","10074302","10079203","10082213"...and so on]
Вместо этого я вижу структуру списка, в которую включено множество подробных тегов. Я предполагаю, что это нормальное поведение, и функция finditer добавляет эти теги, когда находит совпадения. Но ответ немного беспорядочный, и я не знаю, как отключить/удалить эти добавленные теги. Смотрите скриншот ниже.
Может ли кто-нибудь помочь мне изменить приведенный ниже код, чтобы я мог получить предполагаемую структуру списка?
import re
#create a list of strings
company_id = []
#open file contents into a variable
company_data = open(r'C:\Users\etherealessence\Desktop\company_data_test.json', 'r', encoding="utf-8")
#read the line structure into a variable
line_list = company_data.readlines()
#stringify the contents so regex operations can be performed
line_list = str(line_list)
#close the file
company_data.close()
#assign the regex pattern to a variable
pattern = re.compile(r'"id":([^,]+)')
#find all instances of the pattern and append the list
#https://stackoverflow.com/questions/12870178/looping-through-python-regex-matches
for id in re.finditer(pattern, line_list):
#print(id)
company_id.append(id)
#test view the list of company id strings
#print(line_list)
print(company_id)