引入

在Python中我们一般使用os模块来操作文件夹或文件,os为Python的内置模块,使用时直接导入即可:

import os

当文件夹内只有文件时–listdir()

当目标文件夹中只有文件时,我们使用os模块的listdir()方法即可:该方法可以返回目标路径下的文件和文件夹的名字列表,参数就是目标路径。

荔枝:
文件结构如下:

  • E:\test2
  • --------文件1.txt
  • --------文件2.txt
  • --------文件3.xlsx
def getfiles():filenames=os.listdir(r'E:\test')print(filenames)

结果图如下:

当文件中既有文件又有文件夹时–os.walk()

当目标文件中既有文件又有文件夹时,我们使用listdir()方法就只能获得第一层子文件或文件夹了,而子文件夹中的内容便获取不到了。
荔枝:
文件结构如下:

  • E:\test2
  • -------目录1
  • --------------目录11
  • --------------------文件111.txt
  • --------------------文件112.txt
  • --------------文件11.txt
  • --------------文件12.txt
  • -------目录2
  • --------------文件21.vsdx
  • -------文件1.txt
  • -------文件2.txt
def getfiles():filenames=os.listdir(r'E:\test2')print(filenames)

结果如图:只显示出第一层子文件和文件夹

这时候我们需要用到os.walk()方法:传入目标路径即可。该方法可以递归的找出目表路径下的所有文件,无论他藏的有多深~

def get_files():for filepath,dirnames,filenames in os.walk(r'E:\test2'):for filename in filenames:print (filename)


os.walk()方法可以生成三元组,也就是我们代码中的filepath,dirnames,filenames,我们将他们分别打印出来可以看到:
其中filepath就是目标路径下所有文件的路径:

其中dirnames是我们目标路径的所有目录名称:

其中filenames则是各个路径下的文件名称列表:

扩充—获得目标路径下的所有文件的绝对路径

如果你足够细心的话,就会发现我们的filepath和filenames打印的结果图是一一对应的关系:文件1.txt和文件2.txt的路径就是E:\test2;文件11.txt和文件12.txt的路径就是E:\test2\目录1;以此类推。那么我们把这两个返回值拼在一起,不就是各个文件的绝对路径了么?

def get_files():for filepath,dirnames,filenames in os.walk(r'E:\test2'):for filename in filenames:print(os.path.join(filepath,filename))

我们遍历目标路径下的各个文件,用os.path.join()方法将文件路径和文件名拼接在一起,就是各个文件的绝对路径了:

小提示:os.path.join()方法就是将目录和文件合成一个路径的方法。

python遍历文件夹下的所有文件相关推荐

  1. python遍历指定文件夹的所有文件_python 统计指定文件夹下所有的文件数量,BFS方式...

    python 统计指定文件夹下所有的文件数量 本来一直是有这个需求,只是以前写的是递归的方式处理,感觉对资源的占用不友好,而且python的最大递归深度不超过1000,所以改了一下,这里用广度优先遍历 ...

  2. python遍历文件夹下所有excel文件_读取某文件夹下所有excel文件 python

    import os import pandas as pd from sklearn import linear_model path = r'D:\新数据\每日收益率' filenames = os ...

  3. python保存文件到指定文件夹_python实现指定文件夹下的指定文件移动到指定位置...

    本文主要是写了一个将指定文件夹下的指定文件类型移动到指定位置,具体内容如下 # coding:utf-8 import os import shutil import sys reload(sys) ...

  4. python列出文件夹所有文件_python列出文件夹下的所有文件的4种方法

    jincon 发表于 2015-01-28 23:56:00 发表在: python开发 python列出文件夹下的所有文件的4种方法 #方法1:使用os.listdir import os for ...

  5. c语言 遍历文件夹中所有文件名,C# 遍历文件夹下所有子文件夹中的文件,得到文件名...

    假设a文件夹在F盘下,代码如下.将文件名输出到一个ListBox中 using System.Data; using System.Drawing; using System.Linq; using ...

  6. C#遍历得到指定文件夹下的所有文件和子文件夹

    1.遍历指定文件夹下的所有文件 string path = Application.StartupPath + "\\data\\采集数据\\"; DirectoryInfo ro ...

  7. python下载文件到指定文件夹-python实现指定文件夹下的指定文件移动到指定位置...

    # coding:utf-8 import os import shutil import sys reload(sys) sys.setdefaultencoding('utf8') # print ...

  8. python批量生成文件夹_python实现批量获取指定文件夹下的所有文件的厂

    本文实例讲述了python实现批量获取指定文件夹下的所有文件的厂商信息的方法.分享给大家供大家参考.具体如下: 功能代码如下: import os, string, shutil,re import ...

  9. java 文件 递归_JAVA实现遍历文件夹下的所有文件(递归调用和非递归调用)

    JAVA 遍历文件夹下的所有文件(递归调用和非递归调用) 1.不使用递归的方法调用. public void traverseFolder1(String path) { int fileNum = ...

  10. 图解python pdf_Python合并同一个文件夹下所有PDF文件的方法

    一.需求说明 下载了网易云课堂的吴恩达免费的深度学习的pdf文档,但是每一节是一个pdf,我把这些PDF文档放在一个文件夹下,希望合并成一个PDF文件.于是写了一个python程序,很好的解决了这个问 ...

最新文章

  1. Eclipse 代码风格配置
  2. Euro Truck Simulator 2欧洲卡车模拟2用VR玩
  3. 如何安装mysql5.7.9_安装mysql-5.7.9-winx64
  4. Python入门第三章--第一节:条件判断语句
  5. laravel静态资源
  6. 微软《我的世界》PC Java版销量超过3000万
  7. 今天有个销售员在问我:“自己每天都有在学习,但是为什么感觉没什么用,进步不大。”
  8. Powerdesigner导出ORACLE形式sql文件遇到的问题总结
  9. 像python一样运行js的__main__
  10. 力扣——LCP 37. 最小矩形面积(困难)
  11. 任正非:鸿蒙最快1年可媲美iOS;首例Apple Card用户遭盗刷;Firefox 69.0.3 发布 | 极客头条...
  12. android audiotrack mp3,播放mp3数据压缩由JLayer和Audiotrack latin mp3在android
  13. Hive找出所有科目成绩都大于某一学科平均成绩的学生
  14. 熟悉Linux基本操作
  15. 对Autorun.inf类U盘病毒的攻防经验总结
  16. 如何成为早起者(二)
  17. (有趣)把文字隐藏到图片中
  18. buct编译原理个人作业
  19. TalkingData游戏统计IOS工程 出现TDGAOnEvent 报错的问题
  20. 器件选型篇:二极管之肖特基选型

热门文章

  1. 二元函数连续性、可导性及极限
  2. Windows系统利用zip命令压缩文件夹
  3. SSE/AVX/AVX2汇编技巧
  4. 空间坐标系(惯性坐标系、地球坐标系、WGS-84坐标系、站心坐标系)
  5. 软件工程电商系统数据库定义_电商数据库详细设计说明书V0.4
  6. 软件的生命周期分为哪几个阶段
  7. 计算机毕业设计springboot基于springboot框架的企业合同管理系统设计与实现
  8. 软件的行业适配性:进销存软件与五金行业
  9. 企业微信机器人消息发送(文本、图片、文件)
  10. 黑马python培训靠谱吗-黑马程序员的Python怎么样?