Python作业之递归遍历目录

import os


def listdirs(url):
    url = r'' + url
    if os.path.isdir(url):
        lis = os.listdir(url)
        for i in lis:
            path = url + os.sep + i
            if os.path.isfile(path):
                f = open('listdir.txt', 'a+')
                f.write(path + '\n')
                f.close()
            else:
                path = url + os.sep + i
                listdirs(path)
        print('遍历{}目录完成'.format(url))
    else:
        print('并非合法目录')
        url = input('请输入合法地址:')
        listdirs(url)


if __name__ == '__main__':
    url = input('请输入合法地址:')
    listdirs(url)

学习成果:

1.学习部分os模块函数:

os.listdir(path) 返回path指定的文件夹包含的文件或文件夹的名字的列表。
os.sep代表当前操作系统特定的路径分割符
os.path.isdir(path)判断路径是否为目录
os.path.isfile(path)判断路径是否为文件

                                              
 

 

 

 

2.了解python内置函数open(name[, mode[, bufferinng]])及相关知识:

常见mode有'r','r+','w','w+','a','a+'。

open()创建一个可迭代的file对象。

read() 方法用于从文件读取指定的字节数,如果未给定或为负则读取所有,每次读取后指针都会移动至读取末尾。

write() 方法用于向文件中写入指定字符串。

在文件关闭前或缓冲区刷新前,字符串内容存储在缓冲区中,这时你在文件中是看不到写入的内容的。

3.递归遍历为深度遍历。

4.os模块有更简便的函数os.walk进行目录遍历。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值