Python获取指定文件夹下的文件名的方法


Posted in Python onFebruary 06, 2018

本文采用os.walk()和os.listdir()两种方法,获取指定文件夹下的文件名。

一、os.walk()

模块os中的walk()函数可以遍历文件夹下所有的文件。

os.walk(top, topdown=Ture, onerror=None, followlinks=False)

该函数可以得到一个三元tupple(dirpath, dirnames, filenames).

参数含义:

  1. dirpath:string,代表目录的路径;
  2. dirnames:list,包含了当前dirpath路径下所有的子目录名字(不包含目录路径);
  3. filenames:list,包含了当前dirpath路径下所有的非目录子文件的名字(不包含目录路径)。

注意,dirnames和filenames均不包含路径信息,如需完整路径,可使用os.path.join(dirpath, dirnames)

下面给出代码;

# -*- coding: utf-8 -*-  
import os 
def file_name(file_dir):  
  for root, dirs, files in os.walk(file_dir): 
    print(root) #当前目录路径 
    print(dirs) #当前路径下所有子目录 
    print(files) #当前路径下所有非目录子文件

当需要特定类型的文件时,代码如下:

# -*- coding: utf-8 -*-   
import os 
 
def file_name(file_dir):  
  L=[]  
  for root, dirs, files in os.walk(file_dir): 
    for file in files: 
      if os.path.splitext(file)[1] == '.jpeg': 
        L.append(os.path.join(root, file)) 
  return L

其中os.path.splitext()函数将路径拆分为文件名+扩展名,例如os.path.splitext(“E:/lena.jpg”)将得到”E:/lena“+".jpg"。

二、os.listdir()

os.listdir()函数得到的是仅当前路径下的文件名,不包括子目录中的文件,所有需要使用递归的方法得到全部文件名。

直接给出代码,函数将返回类型为‘.jpeg'个文件名:

# -*- coding: utf-8 -*- 
import os 
 
def listdir(path, list_name): 
  for file in os.listdir(path): 
    file_path = os.path.join(path, file) 
    if os.path.isdir(file_path): 
      listdir(file_path, list_name) 
    elif os.path.splitext(file_path)[1]=='.jpeg': 
      list_name.append(file_path)

初学python,犯了些低级错误,浪费了很多时间,首先一定要确保代码的四空格缩进,注意直接回车下一行并不是四空格缩进;还有一点是在命令提示符窗口(Windows)使用python解释器第一次运行代码后,修改源代码,如若再次运行需要退出重新进入python解释器,否则仍将运行第一次执行过的代码。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中使用PIL模块对图片进行高斯模糊处理的教程
May 05 Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
Apr 11 Python
解决python删除文件的权限错误问题
Apr 24 Python
使用python serial 获取所有的串口名称的实例
Jul 02 Python
python实现控制COM口的示例
Jul 03 Python
python matplotlib中的subplot函数使用详解
Jan 19 Python
Python模块future用法原理详解
Jan 20 Python
如何使用python传入不确定个数参数
Feb 18 Python
Python 之 Json序列化嵌套类方式
Feb 27 Python
Python HTMLTestRunner库安装过程解析
May 25 Python
利用python实现平稳时间序列的建模方式
Jun 03 Python
python基于tkinter实现gif录屏功能
May 19 Python
TensorFlow如何实现反向传播
Feb 06 #Python
tensorflow TFRecords文件的生成和读取的方法
Feb 06 #Python
TensorFlow实现创建分类器
Feb 06 #Python
Python模拟随机游走图形效果示例
Feb 06 #Python
Python 12306抢火车票脚本 Python京东抢手机脚本
Feb 06 #Python
TensorFlow高效读取数据的方法示例
Feb 06 #Python
django使用xlwt导出excel文件实例代码
Feb 06 #Python
You might like
php调用mysql数据 dbclass类
2011/05/07 PHP
推荐一本PHP程序猿都应该拜读的书
2014/12/31 PHP
php数字运算验证码的实现代码
2015/07/30 PHP
用jQuery模拟select下拉框的简单示例代码
2014/01/26 Javascript
json中换行符的处理方法示例介绍
2014/06/10 Javascript
Javascript中Array.prototype.map()详解
2014/10/22 Javascript
生成二维码方法汇总
2014/12/26 Javascript
jquery事件的ready()方法使用详解
2015/11/11 Javascript
JS Attribute属性操作详解
2016/05/19 Javascript
JavaScript第一篇之实现按钮全选、功能
2016/08/21 Javascript
vue实现导航栏效果(选中状态刷新不消失)
2017/12/13 Javascript
JavaScript实现横版菜单栏
2020/03/17 Javascript
JavaScript 俄罗斯方块游戏实现方法与代码解释
2020/04/08 Javascript
Vant Weapp组件踩坑:picker的初始赋值解决
2020/11/12 Javascript
[40:12]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
Python 转义字符详细介绍
2017/03/21 Python
python3去掉string中的标点符号方法
2019/01/22 Python
python使用tomorrow实现多线程的例子
2019/07/20 Python
Python Pandas数据中对时间的操作
2019/07/30 Python
python科学计算之numpy——ufunc函数用法
2019/11/25 Python
5款实用的python 工具推荐
2020/10/13 Python
Python爬虫+Tkinter制作一个翻译软件的示例
2021/02/20 Python
详解如何在css中引入自定义字体(font-face)
2018/05/17 HTML / CSS
5分钟弄清楚html5的drag and drop(小结)
2019/04/10 HTML / CSS
html5 更新图片颜色示例代码
2014/07/29 HTML / CSS
美国著名的户外用品品牌:L.L.Bean
2018/01/05 全球购物
会计专业推荐信
2013/10/29 职场文书
领导工作表现评语
2015/01/04 职场文书
房屋认购协议书
2015/01/29 职场文书
毕业感言怎么写
2015/07/31 职场文书
美容院管理规章制度
2015/08/05 职场文书
励志语录:你若不勇敢,谁替你坚强
2019/11/08 职场文书
Pandas数据类型之category的用法
2021/06/28 Python
Python anaconda安装库命令详解
2021/10/16 Python
mysql中DCL常用的用户和权限控制
2022/03/31 MySQL
tomcat的catalina.out日志按自定义时间格式进行分割的操作方法
2022/04/02 Servers