【Python】获取指定目录下的文件夹和文件

67 篇文章 4 订阅
订阅专栏
48 篇文章 1 订阅
订阅专栏

【Python】获取指定目录下的文件夹和文件

文章目录

  • 【Python】获取指定目录下的文件夹和文件
    • 1. 介绍
    • 2. 举例说明
      • 2.1 os.listdir()
        • 2.1.1 API
        • 2.1.2 main.py 代码如下,时
      • 2.2 os.walk()
        • 2.2.1 API
        • 2.2.2 main.py 代码如下,时
        • 2.2.3 main.py 代码如下,时
    • 3. 其他常用方法

1. 介绍

我们经常会有对文件做批量处理的需求,获取指定目录下的文件夹和文件(有时需要获取所有文件,即子目录下的文件也需要获取)。Python 中扫描目录有两种方法:

  • os.listdir()
  • os.walk()

2. 举例说明

建立项目框架如下:

在这里插入图片描述
其中,

  • test:项目文件夹名称,含有 aa子文件夹main.py
    • aa:文件夹,含有 bb子文件夹cc子文件夹 以及 一个 dd.txt文件
      • bb:文件夹,含有一个 txt 文件
        • ff.txt:txt文件
      • cc:空文件夹
      • dd.txt:txt文件夹
    • main.py:进行代码举例使用

2.1 os.listdir()

os.listdir() 方法用于返回指定的目录下包含的文件或子目录的名字的列表。

  • 这个列表以字母顺序。其得到的是仅当前路径下的文件名,不包括子目录中的文件;
  • 如果需要得到所有文件需要递归。 它也不包括 ‘.’ 和 ‘…’ 即使它在目录中。
2.1.1 API
import os
os.listdir(path)
2.1.2 main.py 代码如下,时
import os

def list_dir(file_dir):
    '''
        通过 listdir 得到的是仅当前路径下的文件名,不包括子目录中的文件,如果需要得到所有文件需要递归
    '''
    dir_list = os.listdir(file_dir)
    result_list = []
    for cur_file in dir_list:
        # 获取文件的绝对路径
        path = os.path.join(file_dir, cur_file)
        if os.path.isfile(path): # 判断是否是文件还是目录需要用绝对路径
            result_list.append(path)
        if os.path.isdir(path):
            result_list += list_dir(path) # 递归子目录
    return result_list

path = 'aa'
list1 = os.listdir(path)
list2 = list_dir(path)

print(list1)
print(list2)

输出如下:

list1: ['bb', 'cc', 'dd.txt', 'ee.jpg']
list2: ['aa/bb/ff.txt', 'aa/dd.txt', 'aa/ee.jpg']

2.2 os.walk()

os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情。

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

方法参数说明

  • top:要遍历的目录的路径
  • topdown:可选,如果为 True,则优先遍历 top 目录,以及 top 目录下的每一个子目录,否则优先遍历 top 的子目录,默认为 True
  • onerror: 可选, 需要一个 callable 对象,当 walk 异常时调用
  • followlinks:可选, 如果为 True,则会遍历目录下的快捷方式(linux 下是 symbolic link)实际所指的目录,默认为 False
  • args:包含那些没有 ‘-’ 或 ‘–’ 的参数列表

返回值: 三元组 (root, dirs, files)

  • root :所指的是当前正在遍历的目录的地址
  • dirs :当前文件夹中所有目录名字的 list (不包括子目录)
  • files :当前文件夹中所有的文件 (不包括子目录中的文件)
2.2.2 main.py 代码如下,时
import os

path = 'aa'
a, b, c = os.walk(path)

print(a)
print(b)
print(c)

输出如下:

a: ('aa', ['bb', 'cc'], ['dd.txt', 'ee.jpg'])
b: ('aa/bb', [], ['ff.txt'])
c: ('aa/cc', [], [])
2.2.3 main.py 代码如下,时
import os
path = 'aa'
for root, dirs, files in os.walk(path):
    for name in files:
        print(os.path.join(root, name))
    for name in dirs:
        print(os.path.join(root, name))

输出如下:

aa/dd.txt
aa/ee.jpg
aa/nn
aa/bb
aa/cc
aa/bb/ff.txt

3. 其他常用方法

  • os.path.splitext():分离文件名和扩展名
import os
file = "file_test.txt"
file_name = os.path.splitext(file)[0] # 输出:file_test
file_suffix = os.path.splitext(file)[1] # 输出:.txt
  • os.path.exists():判断文件或目录是否存在
  • os.path.isfile():判断是否是文件
  • os.path.isdir():判断是否是目录
  • os.path.dirname():获取当前文件所在的目录,即父目录
  • os.makedirs():创建多级目录
  • os.mkdir():创建单级目录
  • os.path.getsize():获取文件大小
python打开指定文件-Python获取指定文件夹下的文件
weixin_37988176的博客
11-01 5157
本文采用os.walk()和os.listdir()两种方法,获取指定文件夹下的文件名。一、os.walk()模块os的walk()函数可以遍历文件夹下所有的文件。os.walk(top, topdown=Ture, onerror=None, followlinks=False)该函数可以得到一个三元tupple(dirpath, dirnames, filenames).参数含义:#dirp...
Python 从绝对路径提取文件名、文件夹名、文件所在目录
rebecca的博客
12-09 3201
使用Python文件绝对路径提取文件名(带扩展和不带扩展)、文件夹完整路径、最后一个文件夹
python 读取文件夹文件
最新发布
cuisidong1997的博客
07-25 735
folder_path = Path(‘文件夹路径’)folder_path = ‘文件夹路径’folder_path = ‘文件夹路径’folder_path = ‘文件夹路径’这些方法可以根据实际需求进行选择和使用。
python获取路径下所有文件_Python读取一个目录下所有目录文件的方法
weixin_39678426的博客
11-24 3573
#!/usr/bin/python# -*- coding:utf8 -*-import osallFileNum = 0def printPath(level, path):global allFileNum'''打印一个目录下的所有文件夹文件'''# 所有文件夹,第一个字段是次目录的级别dirList = []# 所有文件fileList = []# 返回一个列表,其包含在目录条目的名称(...
python怎么读文件名-Python获取指定文件夹下的文件
weixin_37988176的博客
11-01 3785
本文采用os.walk()和os.listdir()两种方法,获取指定文件夹下的文件名。一、os.walk()模块os的walk()函数可以遍历文件夹下所有的文件。os.walk(top, topdown=Ture, onerror=None, followlinks=False)该函数可以得到一个三元tupple(dirpath, dirnames, filenames).参数含义:dirpa...
python 获取指定目录文件名称
10-16
运用python简单语句获取指定目录文件名称,并存放在相关文件
Python文件路径操作汇总,获取文件夹下的所有文件路径
热门推荐
Python栈
05-24 1万+
Python编程过程,我们常常有这样的需求,需要获取一个文件目录下的所有文件,或获取文件目录下的所有指定后缀名的文件,亦或要求获取文件所在的文件夹,还有可能需要替换文件名,删除文件夹。针对这些问题,本文系统总结了这些方法,以供大家参考。
Python 获取指定文件夹下的目录文件的实现
09-18
Python获取指定文件夹下的目录文件是一项非常实用的操作,它可以帮助我们处理文件系统的数据。在进行文件目录的批量处理之前,我们通常需要扫描整个目录树以获取相关的文件和子目录信息。Python提供了...
python 获取指定文件夹下的所有文件,包括子文件夹下的文件
03-03
python 获取指定文件夹下的所有文件,包括子文件夹下的文件路径需要自行更改。 python 获取指定文件夹下的所有文件,包括子文件夹下的文件路径需要自行更改。 python 获取指定文件夹下的所有文件,包括子文件夹...
python实现指定文件夹下的指定文件移动到指定位置
09-20
Python实现指定文件夹下的指定文件类型移动到指定位置,通常涉及几个关键步骤和知识点。以下详细介绍: 1. **环境准备与编码设置**:首先确保Python环境已经安装,并了解操作系统编码类型。在脚本的开始部分,...
python获取指定路径下所有指定后缀文件的方法
09-22
### Python 获取指定路径下所有指定后缀文件的方法 在日常的开发工作,我们经常会遇到需要批量处理特定格式文件的需求,比如备份、分析日志文件、提取数据等场景。Python 提供了强大的文件目录操作功能,能够...
python在windows下读取给定路径下的文件(编码问题已解决)更新
04-14
要求读取指定路径下的文本文件,打印其信息。 如果按下回车就继续下一个,如果按下esc就退出。 getFiles可以获取指定路径下的所有CSV文件。可以自己修改,加上递归更可以深度遍历所给路径下的包括子路径下的文件获取文件类型也可以自己修改。 再提一点,这段程序在python.exe运行很正常 但是在pycharm由于编译器的问题导致esc不管用。。。
python找到文件夹指定文件_Python:在指定目录下查找满足条件的文件
weixin_39524741的博客
11-24 587
1. Python指定目录及其子目录查找文件名含有关键字的文件源码#search.pyimport osimport sysdef search(path, word):for filename in os.listdir(path):fp = os.path.join(path, filename)if os.path.isfile(fp) and word in filename:prin...
pyhton 读取目录下所有文件夹下的文件指定文件
Eagle的博客
11-07 322
前言 1.有的时候比如我们操作错了,将一个文件夹里的.png图片都弄到了不同的文件夹,现在想还原,如果一个个手工选择剪切,恐怕不是一个好办法。 2.有的时候,想把某个目录下的所有文件夹的jpg格式的图片,放在一起,这个时候,就可以用这个方法去做。 方法 通过Pythonos.path.walk()方法,进行读取目录下所有文件,然后在这个方法进行判断指定,就可以得到我们想要的内容。 代码如下: 1.想要设定,指定的那些文件夹进行操作 import os import shutil # 指定路径 pat
chatgpt赋能pythonPython读取目录文件文件夹一个便捷的文件管理解决方案
axuhsssssco的博客
05-28 317
本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程用到的ai工具。
python 读取文件夹下的所有文件夹名称和文件名称
Vertira的博客
04-11 7981
import os file_dir = "D:/s1" for root, dirs, files in os.walk(file_dir, topdown=False): print("当前目录路径:", root) print("当前目录下所有子目录:", dirs) print("当前路径下所有非目录文件:", files)
python获取指定路径文件的基本信息
...
05-02 458
使用os模块下的stat函数可以获取指定路径文件的所有基本信息 os.stat(path) 其,path 参数表示目标文件的访问路径,可以使用相对路径,也可以使用绝对路径。 此函数的返回值是一个对象,其具有表 1 所示的属性,通过访问这些属性,就可以获取指定文件的基本信息。 stat()函数返回对象的常用属性 属性名 含义 属性名 含义 st_mode 保护模式 st_ino 索引号 st_nlink 硬链接号(被连接数目) st_dev 设备名 st_uid 用户 ID st
Python代码集----pathlib应用之获取指定目录下的所有文件
redrose2100的博客
03-14 738
本文提供了获取指定目录所有文件python代码
Python读取路径文件
伍迪艾伦学Python
02-25 2274
Python标准库glob在读取路径文件时特别好用; import glob import numpy as np import matplotlib.pyplot as plt filepath = './data/*.csv' for file in glob.glob(filepath): ydata = np.loadtxt(file, dtype=np.float64, skiprows=1) xdata = np.linspace(0,1080,len(ydata))
python 查找指定文件,并返回路径
06-07
你可以使用 Python 的 `os` 模块和 `glob` 模块来查找指定文件,并返回文件的完整路径。示例代码如下: ```python import os import glob # 指定要查找的文件夹文件名 folder_path = '/path/to/folder/' file_name = 'example.txt' # 使用 glob 模块查找指定文件名的文件 file_list = glob.glob(os.path.join(folder_path, '**', file_name), recursive=True) # 如果找到了文件,则返回文件路径,否则返回 None if len(file_list) > 0: file_path = file_list[0] print("找到文件:", file_path) else: print("没有找到文件:", file_name) ``` 在代码,首先指定要查找的文件夹路径文件名,使用 `os.path.join()` 方法将文件夹路径文件名拼接成一个完整的路径。然后使用 `glob.glob()` 方法查找指定文件名的文件,并返回一个包含文件路径的列表。最后判断列表长度是否大于 0,如果找到了文件,则返回第一个文件路径,否则返回 None。
写文章

热门文章

  • 【Python】分割列表(list)方法详解:平均n等份、拆成一个一个的 31842
  • 【显卡】AMD和Nvidia显卡系列&相关对比(A100 vs RTX4090) 20071
  • 【Linux】解压缩文件命令(7z、zip,tar等) 19587
  • 【vscode】页面放大缩小快捷键 18880
  • 【设置gpu设备】os.environ[‘CUDA_VISIBLE_DEVICES‘] 和 torch.cuda.set_device() 14534

分类专栏

  • 搜广推等—算法面经 付费 28篇
  • 论文写作 3篇
  • 大模型(LLM) 6篇
  • Linux 4篇
  • 比赛 1篇
  • NL2SQL 4篇
  • 数学 2篇
  • 计算机相关知识 4篇
  • 编程语言 2篇
  • Python 48篇
  • Opencv 14篇
  • 代码复现与讲解 2篇
  • 深度学习(机器学习) 25篇
  • GNN 12篇
  • 论文阅读 28篇
  • 软件使用方法 4篇
  • 方法介绍 50篇
  • 使用说明 67篇
  • Error 5篇
  • 计算机视觉 34篇
  • 传统目标检测 3篇
  • 卷积网络 8篇
  • 图像分割 2篇
  • 图像扩充 3篇
  • 推荐系统 15篇
  • 聚类(图聚类) 9篇
  • 实战项目 8篇
  • 编程题 15篇
  • 力扣 13篇
  • CSP 4篇
  • 个人经历 1篇
  • CSDN 5篇

最新评论

  • 【聚类指标】如何评估聚类算法:外部指标和内部指标、指标详解

    烫沽亭的回忆: 2.2计算熵和互信息那里算的不对吧?

  • 【Linux】Vscode连接远程服务器:误删文件,如何找回

    猪猪要专心一点: 第二种方法好用,感谢感谢!

  • 【Python】Python读写.xlsx文件(基本操作、空值补全等)

    PerfXCloud大模型平台: 文章实用,介绍了用pandas读写xlsx文件的技巧。通过安装openpyxl库,可以轻松处理xlsx数据,示例清晰,涵盖了读取前N行、特定行列,以及数据转字典的操作,对处理Excel文件很有帮助。

  • 【聚类指标】如何评估聚类算法:外部指标和内部指标、指标详解

    Zolu: 博主有没有代码啊

  • 【GNN/深度学习】常用的图数据集(资源包)

    Whaoe226: 你好你知道怎么预处理吗,代码是什么呀

大家在看

  • Spring Cloud集成Hystrix 479
  • CSP -J2024游记 161
  • 基于Node.js+vue基于springboot的小型超市库存管理系统(开题+程序+论文) 计算机毕业设计 743
  • ARL-Plus灯塔搭建教程百度网盘分享
  • 力扣热题100 - 矩阵 - 经典多源广度搜索:腐烂的橘子

最新文章

  • 【面经&八股】搜广推方向:面试记录(十三)
  • 【面经&八股】搜广推方向:面试记录(十二)
  • 【面经&八股】搜广推方向:面试记录(十一)
2024年16篇
2023年200篇
2022年5篇
2021年2篇
2020年3篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋冬无暖阳°

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值

玻璃钢生产厂家潍坊玻璃钢人物雕塑贵州环保玻璃钢雕塑销售厂家漯河景观玻璃钢雕塑景观园林玻璃钢仿铜雕塑生产阿拉尔商场美陈焦作节日商场美陈连云港卡通玻璃钢雕塑河北现代雕塑玻璃钢北京商场美陈报价温州公园玻璃钢雕塑公司祁阳玻璃钢造型雕塑洛阳铜玻璃钢人物雕塑定做昆山玻璃钢雕塑定做温州玻璃钢人物雕塑商家阜新玻璃钢雕塑订制价格武汉学校玻璃钢雕塑批发朝阳火烈鸟玻璃钢雕塑定制肇庆玻璃钢动物雕塑批发玻璃钢雕塑生产厂家商场楼层美陈南区玻璃钢雕塑贵州佛像玻璃钢雕塑制作文山玻璃钢雕塑烟台保定玻璃钢人物雕塑枣庄市玻璃钢人物雕塑批发价格火烈鸟玻璃钢雕塑生产厂家亳州卡通玻璃钢雕塑多少钱周口玻璃钢雕塑定做平顶山市玻璃钢雕塑雕刻长春玻璃钢广场雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化