我有一个带有子目录列表的父目录。这些子目录中的每一个都包含一个名为data.json的文件。我想遍历所有子目录并对data.json文件进行一些编辑操作。我该如何实现?目前,我正在执行以下操作:
for dir,dirs, files in os.walk("."):
for filename in files:
if file == 'data.json':
with open(file, 'r') as f:
#carry out editing operation
但是我看不到有任何编辑发生。我怀疑没有找到data.json文件。
答案 0 :(得分:2)
首先,您需要使用完整路径正确访问文件:
for path, subdirs, files in os.walk("."):
for filename in files:
if filename == 'data.json':
fullpath = os.path.join(path, filename)
然后以所需的模式打开它,其中包含的是read
:
with open(fullpath, 'r') as f:
...
详细了解open()
here的模式。