Чтение, запись CSV-файлов в разных каталогах - PullRequest
0 голосов
/ 22 мая 2018

У меня есть файл Python, расположенный в папке C: \ D1 \ D1a \ D1b.Другая папка, скажем C: \ D2 \ D2a \ D2b, содержит несколько файлов CSV, созданных в разное время.Первый шаг, мне нужно найти самый последний CSV-файл из папки C: \ D2 \ D2a \ D2b.Второй шаг, я должен открыть этот конкретный файл csv (с помощью csv.reader) и выполнить некоторые вычисления на основе его содержимого.Моя программа работает очень хорошо, если файлы CSV находятся в одной папке с файлом Python, но не работает, когда я пытаюсь работать в разных папках.Две папки могут быть расположены в произвольных местах на компьютере.Моя система Win10, и я предпочитаю простое решение в Python.Упрощенный код:

import csv
import glob
import os

list_of_files = glob.glob('C:\D2\D2a\D2b\*.csv')
print('found csv files:',list_of_files)
latest_file = max(list_of_files, key=os.path.getmtime)
print('The most recent .csv file found:',latest_file,'\n')

with open('latest_file',newline='') as DAQfile:
    reader=csv.reader(DAQfile,delimiter=',')
    i=0
    for row in reader:
        i+=1
    rows=i
print(rows)

Вывод:

found csv files: ['C:\\D2\\D2a\\D2b\\Book1.csv', 'C:\\D2\\D2a\\D2b\\Book2.csv']
The most recent .csv file found: C:\D2\D2a\D2b\Book2.csv 

Traceback (most recent call last):
  File "C:\D1\D1a\D1b\Mytest.py", line 10, in <module>
    with open('latest_file',newline='') as DAQfile:
FileNotFoundError: [Errno 2] No such file or directory: 'latest_file'

1 Ответ

0 голосов
/ 22 мая 2018

Oops!Похоже, что кавычки вокруг latest_file в операторе open вызывали проблему.Это работает сейчас.

...