我想打开并阅读特定文件夹中的所有csv文件。 我是OS X El Capitan版本10.11.6,我使用的是Python 2.7.10。 我在phyton文件中有以下功能:
def open_csv_files(dir):
for root,dirs,files in os.walk(dir):
for file in files:
if file.endswith(".csv"):
f= open(file)
print "FILE OPEN, AND DO SOMETHING... "
f.close
return
我致电open_csv_file(./dati/esempi)
此程序返回
IOError: [Errno 2] No such file or directory: 'sensorfile_1.csv'
我尝试用绝对路径/Users/Claudia/Desktop/Thesis/dati/esempi/
调用该过程,但我有同样的错误。
此外我定义了另一个在文件夹中打印所有文件名的程序,这个程序正确打印文件夹中的所有文件名。
感谢您的帮助。
答案 0 :(得分:5)
您需要根据root
(基础目录)和文件名的值构建文件的绝对路径。
import os
def open_csv_files(directory):
for root, dirs, files in os.walk(directory):
for file_name in files:
if file_name.endswith(".csv"):
full_file_path = os.path.join(root, file_name)
with open(full_file_path) as fh:
print "Do something with", full_file_path