Python读取指定目录下的指定后缀文件名列表(批量读取)

简介: Python读取指定目录下的指定后缀文件名列表(批量读取)

一、获取指定目录下、指定后缀的文件名列表

"""
函数说明:获取指定目录下的、指定后缀的文件
    例如:.xlsx、.json
Parameters:
    path - 目录所在的路径 例如 path='D:\Python Example\Tianyancha\Data'
    suffix  -  后缀,例如'.xlsx'
Returns:
    input_template_All - 指定后缀的所有文件名
Author:
    heda3
Blog:
    https://blog.csdn.net/heda3
Modify:
    2019-10-12
"""
#参考:https://www.runoob.com/python/os-listdir.html
def getFileName1(path,suffix):
    # 获取指定目录下的所有指定后缀的文件名 
    input_template_All=[]
    f_list = os.listdir(path)#返回文件名
    for i in f_list:
        # os.path.splitext():分离文件名与扩展名
        if os.path.splitext(i)[1] ==suffix:
            input_template_All.append(i)
            #print(i)
    return input_template_All

二、(升级版)获取指定目录下指定后缀的文件名列表和文件名+目录的拼接

例如:D:\Python Example\Tianyancha\Data\xx.xlsx

"""
函数说明:获取指定目录下的、指定后缀的文件名及路径+文件名的拼接
    例如:.xlsx、.json
Parameters:
    path - 目录所在的路径 例如 path='D:\Python Example\Tianyancha\Data'
    suffix  -  后缀,例如'.xlsx'
Returns:
    input_template_All - 指定后缀的所有文件名 xx.xlsx
    input_template_All_Path - 文件名和该路径的拼接 例如:D:\Python Example\Tianyancha\Data\xx.xlsx
Author:
    heda3
Blog:
    https://blog.csdn.net/heda3
Modify:
    2019-10-12
"""
#参考:https://www.runoob.com/python/os-walk.html
def getFileName2(path,suffix):
    input_template_All=[]
    input_template_All_Path=[]
    for root, dirs, files in os.walk(path, topdown=False):
         for name in files:
             #print(os.path.join(root, name))
             print(name)
             if os.path.splitext(name)[1] == suffix:
                 input_template_All.append(name)
                 input_template_All_Path.append(os.path.join(root, name))
    return input_template_All,input_template_All_Path

测试案例:

import os
path='D:\Python Example\Tianyancha\Data'
input_template_All1=getFileName1(path,'.xlsx')
input_template_All2,input_template_All_Path2=getFileName2(path,'.xlsx')

可更该为获取当前目录:

os.path.abspath('.')#获取当前工作目录路径 介绍其它获取方法https://www.cnblogs.com/Jomini/p/8636129.html

参考文档:

【1】Python os.listdir() 方法 https://www.runoob.com/python/os-listdir.html

【2】Python os.walk() 方法 https://www.runoob.com/python/os-walk.html

【3】os.path.split(path) 把路径分割成 dirname 和 basename,返回一个元组


os.path.join(path1[, path2[, ...]]) 把目录和文件名合成一个路径

Python os.path() 模块(全)  https://www.runoob.com/python/python-os-path.html

walk()方法语法格式如下:


os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

参数

top -- 是你所要遍历的目录的地址, 返回的是一个三元组(root,dirs,files)。

root 所指的是当前正在遍历的这个文件夹的本身的地址

dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)

files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)

topdown --可选,为 True,则优先遍历 top 目录,否则优先遍历 top 的子目录(默认为开启)。如果 topdown 参数为 True,walk 会遍历top文件夹,与top 文件夹中每一个子目录。

onerror -- 可选,需要一个 callable 对象,当 walk 需要异常时,会调用。

followlinks -- 可选,如果为 True,则会遍历目录下的快捷方式(linux 下是软连接 symbolic link )实际所指的目录(默认关闭),如果为 False,则优先遍历 top 的子目录。

返回值

该方法没有返回值。


目录
相关文章
|
17小时前
|
Python
【Python进阶(五)】——模块搜索及工作目录
【Python进阶(五)】——模块搜索及工作目录
|
17小时前
|
Python
【Python操作基础】——列表操作
【Python操作基础】——列表操作
|
21小时前
|
索引 Python
Python中的列表、元组和字典各具特色
Python中的列表、元组和字典各具特色:列表是可变的,元组不可变,字典亦可变;列表和元组有序,字典无序(但在Python 3.7+保持插入顺序);元素类型上,列表和元组元素任意,字典需键不可变;列表用方括号[],元组用圆括号(),字典用大括号{}表示。列表不适合作字典键,元组可以。选择数据结构应依据实际需求。
7 2
|
1天前
|
Shell Python
Python Stock guess_indicators_daily_job.py文件的调整
Python Stock guess_indicators_daily_job.py文件的调整
|
2天前
|
XML 前端开发 数据格式
BeautifulSoup 是一个 Python 库,用于从 HTML 和 XML 文件中提取数据
BeautifulSoup 是 Python 的一个库,用于解析 HTML 和 XML 文件,即使在格式不规范的情况下也能有效工作。通过创建 BeautifulSoup 对象并使用方法如 find_all 和 get,可以方便地提取和查找文档中的信息。以下是一段示例代码,展示如何安装库、解析 HTML 数据以及打印段落、链接和特定类名的元素。BeautifulSoup 还支持更复杂的查询和文档修改功能。
8 1
|
2天前
|
存储 Linux Shell
python移除/删除非空文件夹/目录的最有效方法是什么?
python移除/删除非空文件夹/目录的最有效方法是什么?
8 0
|
3天前
|
数据采集 NoSQL 中间件
python-scrapy框架(四)settings.py文件的用法详解实例
python-scrapy框架(四)settings.py文件的用法详解实例
9 0
|
3天前
|
存储 数据采集 数据库
python-scrapy框架(三)Pipeline文件的用法讲解
python-scrapy框架(三)Pipeline文件的用法讲解
7 0
|
4天前
|
BI Python
深入浅出:讲解Python中的列表推导式
深入浅出:讲解Python中的列表推导式
|
4天前
|
监控 PHP Python
1688快速获取整店铺列表 采集接口php Python
在电子商务的浪潮中,1688平台作为中国领先的批发交易平台,为广大商家提供了一个展示和销售商品的广阔舞台;然而,要在众多店铺中脱颖而出,快速获取商品列表并进行有效营销是关键。