Удаление первой строки заголовка из текстового файла после чтения в python - PullRequest
1 голос
/ 18 апреля 2019

Я загрузил текстовый файл с помощью следующей команды.Я хочу удалить первую строку заголовка из contents, строки которого были разделены \n.Как это сделать?

txtfile = open(filepath, "rt")
contents = txtfile.read()
contents
'Label  Volume(voxels)SurfArea(mm^2) Eccentricity   Elongation     Orientation    Centroid                      Axes Length                   Bounding Box                  \n  1      148766  ...

Во-вторых, как убрать \n с конца каждого элемента (т. Е. Каждой строки) contents?

Спасибо

Ответы [ 5 ]

2 голосов
/ 18 апреля 2019

Использование нарезки:

файл:

Label  Volume(voxels)SurfArea(mm^2) Eccentricity   Elongation     Orientation    Centroid                      Axes Length                   Bounding Box                  \n1
148766

Следовательно :

txtfile = open(filepath, "rt")
contents = txtfile.readlines()[1:]    # skip the first line
print(contents)    

ВЫХОД :

['148766']

РЕДАКТИРОВАТЬ :

Если текст находится в одной строке, вы можете преобразовать список в строку и разделить () с помощью разделителя \n:

txtfile = open(filepath, "rt")
contents = txtfile.readlines()
print("".join(contents).split(r'\n1')[1:])
1 голос
/ 18 апреля 2019

Попробуйте:

txtfile = open(filepath, "rt")
txtfile.readline()  # Discard first line
contents = txtfile.read()
0 голосов
/ 18 апреля 2019

В вашем примере это может работать:

import re
#your code
content = re.sub( ".*?\n1", "", content, 1 ) #Replace the first occurance of "[Anything]\n1" with ""
0 голосов
/ 18 апреля 2019

Вы можете просто пропустить заголовок, используя next на fd,

>>> with open(filepath, "rt") as textfile:
...    next(textfile)  # Discard first line
...    contents = txtfile.read()
0 голосов
/ 18 апреля 2019

попробуй:

txtfile = open(filepath, "rt")
contents = txtfile.read()
#split it and join only the items after it
after = ''.join(contents.split(r'\n1')[1:])

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...