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文件比较示例分享
Jan 10 Python
pymongo实现多结果进行多列排序的方法
May 16 Python
详解如何利用Cython为Python代码加速
Jan 27 Python
Python实现的端口扫描功能示例
Apr 08 Python
Flask框架模板渲染操作简单示例
Jul 31 Python
Python的条件锁与事件共享详解
Sep 12 Python
Python API 操作Hadoop hdfs详解
Jun 06 Python
python如何随机生成高强度密码
Aug 19 Python
Django ModelForm组件原理及用法详解
Oct 12 Python
python字典与json转换的方法总结
Dec 28 Python
Python turtle实现贪吃蛇游戏
Jun 18 Python
Pandas实现DataFrame的简单运算、统计与排序
Mar 31 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之require/include顺序 推荐
2011/01/02 PHP
PHP中多维数组的foreach遍历示例
2014/06/13 PHP
php实现简单加入购物车功能
2017/03/07 PHP
PHP+Redis开发的书签案例实战详解
2019/07/09 PHP
js用图作提交按钮或超连接
2008/03/26 Javascript
jQuery基础知识小结
2014/12/22 Javascript
深入理解JavaScript系列(47):对象创建模式(上篇)
2015/03/04 Javascript
node.js入门实例helloworld详解
2015/12/23 Javascript
微信小程序-获得用户输入内容
2017/02/13 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
SVG动画vivus.js库使用小结(实例代码)
2017/09/14 Javascript
微信小程序之圆形进度条实现思路
2018/02/22 Javascript
浅谈Vue.js组件(二)
2019/04/09 Javascript
微信小程序背景音乐开发详解
2019/12/12 Javascript
JavaScript 变量,数据类型基础实例详解【变量、字符串、数组、对象等】
2020/01/04 Javascript
举例简单讲解Python中的数据存储模块shelve的用法
2016/03/03 Python
windows下安装Python和pip终极图文教程
2017/03/05 Python
python实现傅里叶级数展开的实现
2018/07/21 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
django删除表重建的实现方法
2019/08/28 Python
Python和Sublime整合过程图示
2019/12/25 Python
使用Tkinter制作信息提示框
2020/02/18 Python
使用Pycharm(Python工具)新建项目及创建Python文件的教程
2020/04/26 Python
利用keras使用神经网络预测销量操作
2020/07/07 Python
美国最顶级的精品店之一:Hampden Clothing
2016/12/22 全球购物
高中生毕业学习总结的自我评价
2013/11/14 职场文书
中专生自我鉴定
2013/12/17 职场文书
运动会方阵口号
2014/06/07 职场文书
拔河比赛口号
2014/06/10 职场文书
国贸专业毕业求职信
2014/06/11 职场文书
教师党员自我评价范文
2015/03/04 职场文书
交通处罚决定书
2015/06/24 职场文书
MySQL查询学习之基础查询操作
2021/05/08 MySQL
在python中实现导入一个需要传参的模块
2021/05/12 Python
详解Java实践之建造者模式
2021/06/18 Java/Android
Mybatis-plus在项目中的简单应用
2021/07/01 Java/Android