我有一个位于文件夹C:\ D1 \ D1a \ D1b中的Python文件。另一个文件夹,比如C:\ D2 \ D2a \ D2b包含在不同时间创建的一些csv文件。 第一步,我需要从文件夹C:\ D2 \ D2a \ D2b中找到最新的csv文件。 第二步,我必须打开特定的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'
答案 0 :(得分:0)
糟糕!看来 open 语句中 latest_file 周围的引号导致了问题。它现在有效。