Python os和os.path模块

这篇博客介绍了如何使用Python的os模块遍历指定目录及其子目录,查找并读取.xlsx扩展名的文件。首先定义路径,然后通过os.listdir()遍历文件,使用endswith()方法筛选.xlsx文件,打印文件名。此外,还展示了如何递归遍历目录,获取所有文件路径。这两个方法对于处理大量文件和深入文件系统非常实用。
摘要由CSDN通过智能技术生成

1、目的:在Python中实现只读取扩展名为xlsx的文件

解决方法:

使用os模块。

方法功能说明
remove(path)删除指定的文件
rename(src,dst)重命名文件或目录
stat(path)返回文件的所有属性
listdir(path)返回path目录下的文件和目录列表
startfile(filepath[,operation])使用关联的应用程序打开指定文件
chmod(path,mode,*,dir_fd=None,follow_symlinks=True)改变文件的访问权限

解决思路:

1、确定目录

2、循环遍历每一个文件

3、筛选符合条件的文件,读取数据

具体代码如下:

import os
# 1、首先定义路径
filepath = 'E:/old/工作/数据库表'
# 2、循环遍历路径下的每一个文件
for filename in os.listdir(filepath):
    # 3、列出文件中以.xlsx结尾的文件
    if filename.endswith(('.xlsx')):
        print(filename)

结果如下:

2、目的:使用Python来遍历指定目录下下各个文件夹中的文件

解决方法:

使用os.path模块的join方法

方法功能说明
abspath(path)返回绝对路径
dirname(p) 返回目录的路径
exists(path)判断文件是否存在
getatime(filename)返回文件的最后访问时间
getctime(filename)返回文件的创建时间
getmtime(filename)返回文件的最后修改时间
getsize(filename)返回文件的大小
isabs(path)判断path是否为绝对路径
isdir(path)

判断path是否为目录

isfile(path)判断path是否为文件
join(path,*paths)连接两个或多个path
split(path)对路径进行分割,以列表的形式返回
splitext(path)从路径中分割文件的扩展名
splitdrive(path)从路径中分割驱动器的名称

解决思路:

1、定义一个函数,使用这个函数循环遍历,指定目录下的所有子文件夹

2、调用函数,查看所有文件

具体代码:

def get_filelist(dir,Filelist):
    if os.path.isfile(dir): #判断path是否为文件
        Filelist.append(dir) # 将路径添加到列表中
    elif os.path.isdir(dir): #判断路径是否为目录
        for s in os.listdir(dir):  #遍历目录下的每一个文件
            new_dir = os.path.join(dir,s)
            get_filelist(new_dir,Filelist) #调用定义的函数
    return Filelist

list_ = get_filelist('E:/old/工作/数据库表',[])
print(len(list_))
for l in list_:
    print(l)

结果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值