У меня есть список:питона регулярного выражения находит матч в списке
chain_views = [u'x|frequency|x:y|||cbase',
u'x|frequency|x:y||weights_UK18|cbase',
u'x|frequency||y|weights_UK18|c%']
Я хочу, чтобы проверить состояние ниже по списку выше
if el.startswith('x|frequency|') and el.split('|')[4]!='' and el.split('|')[3]=='y':
Как я могу преобразовать состояние выше в регулярном выражении?
Прямо сейчас я проверяю это в цикле, и я думаю, что регулярное выражение может быть лучшим вариантом?
for el in chain.views:
if el.startswith('x|frequency|') and el.split('|')[4]!='' and el.split('|')[3]=='y':
weighted_views = True
break
else:
weighted_views = False
return weighted_views
Какова цель этого для цикла? он всегда возвращает результат «weighted_views» последнего элемента списка прямо сейчас. –
Вы сбиваете с толку 'continue' с' break'? Продолжайте, просто выполните следующую итерацию, и это все равно. Кроме того, вы могли бы избежать вызова 'el.split ('|')' дважды. Я знаю, что это всего лишь пример кода, но все же стоит отметить. –
Вы правы, я смущаю это! –