Split () TypeError в Python - PullRequest
       3

Split () TypeError в Python

1 голос
/ 14 июля 2020

Я запустил программу Python и получаю следующую ошибку:

   File :...,line ...,in <module>  
   results = parse_file(text, ['stderr'], ['ERROR', 'WARN'])
  
   Fie :....,line ...,in parse_file
   all_containers=re.split('^Container:container_',text,flags=re.MULTILINE)
   TypeError: split() got an unexpected keyword argument 'flags'

Ниже мой код:

def parse_file(text,filter_log_types=None,filter_content_types=None):
    full_text_lines=text.split('\n')

    results=[]

    all_containers=re.split('^Container:container_',text,flags=re.MULTILINE)

    for item in all_containers[1:]:
        data=parse_container(item, full_text_lines, filter_log_types, filter_content_types)
        results.append(data)

    return results 

if __name__ == '__main__':
    text = open("lg.txt").read()
    results = parse_file(text, ['stderr'], ['ERROR', 'WARN'])

Я использую Python 2.6 .6. Пожалуйста, помогите мне разобраться с этой ошибкой. Большое спасибо!

1 Ответ

1 голос
/ 14 июля 2020

Аргумент ключевого слова flags был добавлен в версию python 2.7 , поэтому он вызывает ошибку в вашем коде

Попробуйте использовать re. compile () в сочетании с split ()

all_containers=re.compile('^Container:container_',flags=re.MULTILINE).split(text)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...