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中操作字典之fromkeys()方法的使用
May 21 Python
python中使用序列的方法
Aug 03 Python
Django Admin 实现外键过滤的方法
Sep 29 Python
TensorFlow 实战之实现卷积神经网络的实例讲解
Feb 26 Python
python实现批量注册网站用户的示例
Feb 22 Python
python适合人工智能的理由和优势
Jun 28 Python
django如何通过类视图使用装饰器
Jul 24 Python
pandas按行按列遍历Dataframe的几种方式
Oct 23 Python
tensorflow实现tensor中满足某一条件的数值取出组成新的tensor
Jan 04 Python
matplotlib绘制多子图共享鼠标光标的方法示例
Jan 08 Python
pycharm 如何取消连按两下shift出现的全局搜索
Jan 15 Python
python调用ffmpeg命令行工具便捷操作视频示例实现过程
Nov 01 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分页函数
2006/10/09 PHP
php获取随机数组列表的方法
2014/11/13 PHP
php fseek函数读取大文件两种方法
2016/10/12 PHP
php json_encode与json_decode详解及实例
2016/12/13 PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
2019/10/16 PHP
[原创]图片分页查看
2006/08/28 Javascript
node.js中的fs.writeSync方法使用说明
2014/12/15 Javascript
在Html中使用Requirejs进行模块化开发实例详解
2016/04/15 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
jQuery实现手机版页面翻页效果的简单实例
2016/10/05 Javascript
Bootstrap modal 多弹窗之叠加引起的滚动条遮罩阴影问题
2017/02/27 Javascript
AngularJS实现的简单拖拽功能示例
2018/01/02 Javascript
vue.js 实现输入框动态添加功能
2018/06/25 Javascript
vue 中滚动条始终定位在底部的方法
2018/09/03 Javascript
JS实现将对象转化为数组的方法分析
2019/01/21 Javascript
Vue 动态组件与 v-once 指令的实现
2019/02/12 Javascript
转换layUI的数据表格中的日期格式方法
2019/09/19 Javascript
[03:08]TI9战队档案 - Vici Gaming
2019/08/20 DOTA
python笔记(2)
2012/10/24 Python
python 列表,数组,矩阵两两转换tolist()的实例
2018/04/04 Python
python读写csv文件方法详细总结
2019/07/05 Python
python并发编程多进程之守护进程原理解析
2019/08/20 Python
Python日志syslog使用原理详解
2020/02/18 Python
Python matplotlib可视化实例解析
2020/06/01 Python
Python数据相关系数矩阵和热力图轻松实现教程
2020/06/16 Python
CSS3旋转——彩色扇子兼容firefox浏览器
2013/06/04 HTML / CSS
英国领先的奢侈品零售商之一:CRUISE
2016/12/02 全球购物
宝拉珍选美国官网:Paula’s Choice美国
2018/01/07 全球购物
泰国综合购物网站:Lazada泰国
2018/04/09 全球购物
英国排名第一的LED灯泡网站:LED Bulbs
2019/09/03 全球购物
禁止高声喧哗的标语
2014/06/11 职场文书
漂亮妈妈观后感
2015/06/08 职场文书
2016年中学端午节主题活动总结
2016/04/01 职场文书
Nginx的反向代理实例详解
2021/03/31 Servers
pytorch查看网络参数显存占用量等操作
2021/05/12 Python
python实现简易自习室座位预约系统
2021/06/30 Python