Using os.walk to read files(使用os.walk读取文件)
本文介绍了使用os.walk读取文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试访问主目录下子目录中的根文件。为此,我使用os.walk()
。我能够成功地找到文件名,并能够将其存储在列表中。但是,当我尝试使用open(filename, 'r')
打开这些文件时,我收到一个错误,告诉我没有这样的文件或目录存在。
我认为这里的问题在于我只访问'names'
而不是实际的文件本身。我的代码如下所示:
list_of_files = {}
for (dirpath, dirnames, filenames) in
os.walk("C:\Users\Akarshkb\Desktop\cs361hw\HMP_Dataset"):
for filename in filenames:
if filename.endswith('.txt'):
list_of_files[filename] = os.sep.join([dirpath, filename])
file = open(filename, 'r')
file.read()
file.close()
print (list_of_files)
我收到以下错误:
`FileNotFoundError Traceback (most recent call
last)
<ipython-input-40-10ae3e92446a> in <module>()
4 if filename.endswith('.txt'):
5 list_of_files[filename] = os.sep.join([dirpath,
filename])
----> 6 file = open(filename, 'r')
7 file.read()
8 file.close()
FileNotFoundError: [Errno 2] No such file or directory: 'Accelerometer-2011-
04-11-13-28-18-brush_teeth-f1.txt'`
如有任何帮助,将不胜感激。
推荐答案
您不应忽略dirpath
值。
试试:
file = open(os.path.join(dirpath, filename), 'r')
这篇关于使用os.walk读取文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:使用os.walk读取文件
基础教程推荐
猜你喜欢
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 筛选NumPy数组 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01