使用os.walk在python中修改文件

时间:2018-07-16 09:56:38

标签: python json os.walk

我有一个带有子目录列表的父目录。这些子目录中的每一个都包含一个名为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文件。

1 个答案:

答案 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的模式。