python - 使用 Python 遍历目录

我需要遍历给定目录的子目录并搜索文件。如果我得到一个文件,我必须打开它并更改内容并用我自己的行替换它。

我试过了:

import os

rootdir ='C:/Users/sid/Desktop/test'

for subdir, dirs, files in os.walk(rootdir):
    for file in files:
        f=open(file,'r')
        lines=f.readlines()
        f.close()
        f=open(file,'w')
        for line in lines:
            newline = "No you are not"
            f.write(newline)
        f.close()

但我收到错误消息。我究竟做错了什么?

最佳答案

实际浏览目录的过程与您编写的代码相同。如果你用一个简单的 print 语句替换内部循环的内容,你可以看到每个文件都找到了:

import os
rootdir = 'C:/Users/sid/Desktop/test'

for subdir, dirs, files in os.walk(rootdir):
    for file in files:
        print(os.path.join(subdir, file))

如果您在运行上述程序时仍然遇到错误,请提供错误消息。

https://stackoverflow.com/questions/19587118/

相关文章:

python - 使用 POST 从 Python 脚本发送文件

mysql - 如何重启在 Ubuntu linux 上运行的远程 MySQL 服务器?

python - 在 Mac 上安装 python 模块最兼容的方式是什么?

python - 将 float 转换为一定精度,然后复制为字符串

c - 如何使用 C 获取 Linux 中的 CPU 数量?

python - 遍历一个numpy数组

python - 检测人脸然后自动裁剪图片

python - 如何使用 conda 升级到 Python 3.6?

linux - rm : cannot remove: Permission denied

linux - 如何从/proc/pid/stat 获取应用程序的总 CPU 使用率?