segmented
- список списков.Каждый элемент может быть списком из одного или нескольких строковых элементов.И каждый строковый элемент имеет форму:
Block1: some strings
Block2: some strings
Теперь не все строковые элементы должны иметь Block2
.Я хочу запустить цикл, где каждый элемент в «сегментированном» выбран, а затем еще раз цикл с вторичными элементами и тесты на Block2
.Если присутствует, строка после Block2
выбрана.Если имеется более 1 вторичного элемента, тогда вся строка соединяется в одну строку.Код, который я пробовал, выглядит следующим образом:
blk2 = re.compile(r'Block2:(.*)', re.DOTALL)
list1 = []
for i in segmented:
secondlist = []
for j in i:
if re.search(blk2, j).group(1) is not None: # testing if Block2 exists
txt = re.search(blk2, j).group(1) # picking up strings after Block2.
secondlist.append(txt) #appending the string to an intermediate list
'\n'.join(secondlist) #if there are more than 1 element in secondlist joining them to one element
list1.append(secondlist[0]) # appending the joined element to list1
Я продолжаю получать NoneType
ошибки.Что я делаю не так?