Как я могу открыть несколько файлов одновременно в Python? - PullRequest
0 голосов
/ 22 апреля 2020

Я пытаюсь открыть несколько файлов ".csv", но он продолжает выводить "OSError: rec_11.csv not found" (фактический файл не имеет значения. Он всегда останавливается на 3). Я знаю, что файл там, и я могу открыть его сам. Первые два файла открываются нормально, и я могу получить данные, но они всегда останавливаются на третьем, независимо от того, какие файлы я туда положил. Из того, что я обнаружил, это должно работать, но это не так:

def extract(file):
    data =np.genfromtxt(file,delimiter=",")
    arr = data.transpose()
    return arr[2]

directory = r'C:\Users\...\Desktop\senior\Peeps'

for subdir, dirs, files in os.walk(directory):
    for file in files:
        print(os.path.join(subdir, file))
        if(file.endswith(".csv")):
            people.append(os.path.join(subdir, file))
            ecg_data.append(extract(file))

Я также попробовал это:

for filename in os.listdir(directory):
        print(filename)
        if(filename.endswith(".csv")):
            ecg_data.append(extract(filename))
            people.append(filename)

Я должен отметить, что внутри Peeps есть несколько папок и внутри них находятся файлы CSV.

Решено . Мне было указано, что мне нужно соединить каталог и файл. Следующее работает для меня сейчас.

for subdir, dirs, files in os.walk(directory):
    for file in files:
        if(file.endswith(".csv")):
            people.append(os.path.join(subdir, file))
            ecg_data.append(extract(os.path.join(subdir, file)))

1 Ответ

0 голосов
/ 22 апреля 2020

Попробуйте код ниже:

path=os.getcwd() # Obtains your current working directory
path_list = []
valid__extensions = [".csv"] #specify your vaild extensions here
valid_extensions = [item.lower() for item in valid_extensions]
for file in os.listdir(path):
    extension = os.path.splitext(file)[1]
    if extension.lower() not in valid_extensions:
        continue
    path_list.append(os.path.join(path, file))

for csv_file in path_list:
# add what ever function you like to your .csv file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...