с открытым () внутри цикла понимания - получение списка текстового содержимого всех файлов в каталоге

Базовые классы всегда создаются перед членами данных. Элементы данных создаются в том порядке, в котором они объявлены в классе. Этот порядок не имеет ничего общего с списком инициализации. Когда элемент данных инициализируется, он будет просматривать список инициализации для параметров и вызывать конструктор по умолчанию, если нет совпадения. Деструкторы для элементов данных всегда вызывают в обратном порядке.

1
задан chase 16 January 2019 в 21:54
поделиться

2 ответа

Вы можете сделать:

# import libraries
import os,pandas

# list filenames, assuming your path is './'
files = [i for i in os.listdir('./') if i[:3]=='GSE' and i[-3:]=='txt']

# get contents of files
contents = []
for i in files:
    with open(i) as f: contents.append(f.read().strip())

# into a nice table 
table = pandas.DataFrame(contents, index=files, columns=['text'])
0
ответ дан aerijman 16 January 2019 в 21:54
поделиться

Ваш код выглядит отлично читаемым. Возможно, вы искали что-то вроде этого (только Python3):

import pathlib

documents = pd.DataFrame(glob.glob('*.txt'), columns = ['files'])
documents['text'] = documents['files'].map(
    lambda fname: fname.startswith('GSE') and pathlib.Path(fname).read_text())
0
ответ дан Marat 16 January 2019 в 21:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: