Как извлечь подмножество данных в группы до и после строки - PullRequest
0 голосов
/ 07 мая 2019

У меня есть текстовый файл. В текстовом файле, основанном на определенном слове, данные должны быть разделены на две группы, например, все перед определенным словом как одна группа и каждая вещь после определенного слова как другая группа

текстовый файл что-то вроде этого

hello every one 
Is any space here?

CHAIN

every thing of the 

file lies here

На основе CHAIN ​​мы разделяем текстовый файл на две группы

group 1
hello every one 
Is any space here?
group 2
every thing of the 

file lies here

Ответы [ 3 ]

0 голосов
/ 07 мая 2019

вы можете попробовать решение с разделением и доступом к каждой строке, используя индекс, как показано ниже.

a = """
hello every one 
Is any space here?

CHAIN

every thing of the 

file lies here
"""

print(a.split("CHAIN")[0])
print(a.split("CHAIN")[1])
0 голосов
/ 07 мая 2019

только для полноты (работают и другие ответы):

если у вас есть текстовый файл

file = open('file.txt', 'r').read()

print(file.split('CHAIN'))

# if you want to remove the new spaces (\n)

print([text.strip() for text in file.split('CHAIN')])
0 голосов
/ 07 мая 2019

Вы упомянули, что у вас есть текстовый файл, скажем test.txt.

Ваш код:

with open("test.txt", "r") as f:
    data = f.readlines()

part1, part2 = ("".join(data).split("CHAIN"))
print(part1)
print(part2)

Дает мне:

hello every one
Is any space here?




every thing of the

file lies here

В противном случае возможно и другое решениехорошо.

...