Создайте список предметов, полученных при разбиении текста - PullRequest
0 голосов
/ 11 июля 2019

У меня есть каталог с сотнями файлов в следующем формате.

 summary-0000016b9bf45ec8-AAAACCCC0286.json
 summary-0000016b9bf47180-AAAACCCC0286.json
 summary-0000016b9bf47746-AAAACCCC0286.json
 summary-0000016b9bf47cd8-AAAACCCC0286.json
 summary-0000016b9bf47f48-AAAACCCC0286.json
 summary-0000016b9bf4818e-AAAACCCC0286.json

Мне нужно извлечь поле после резюме и создать его список. Я использую пустой список и пытаюсь добавить свой вывод к нему. Ниже приведен код для создания пустого списка и добавления к нему полей, которые я извлекаю.

for files in dir:
  if 'summary' in files and len(files.split('-')) > 1:
    s_addr = []
    s_addr.append(files.split('-')[1])
    print (s_addr)

Вывод, который я получаю, представляет собой список для каждого элемента, извлеченный, как показано ниже:

['0000016b9bf31d5e']
['0000016b9bf45ec8']
['0000016b9bf1d8c4']
['0000016b9bf3c920']
['0000016b9bf2371f']
['0000016b9bf3d8ec']
['0000016b9bf11cb6']

Ожидаемый результат:

['0000016b9bf31d5e','0000016b9bf45ec8','0000016b9bf1d8c4','0000016b9bf3c920','0000016b9bf2371f','0000016b9bf3d8ec','0000016b9bf11cb6']

Что я делаю не так?

1 Ответ

1 голос
/ 11 июля 2019

Ваш заказ неправильный.Вы не хотите переписывать список каждый раз, поэтому вам нужно поместить s_addr вне вашего цикла for:

s_addr = []
for files in dir:
  if 'summary' in files and len(files.split('-')) > 1:
    s_addr.append(files.split('-')[1])
print (s_addr)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...