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 相关文章推荐
wxPython中listbox用法实例详解
Jun 01 Python
django创建自定义模板处理器的实例详解
Aug 14 Python
Python实现的朴素贝叶斯分类器示例
Jan 06 Python
python实现12306抢票及自动邮件发送提醒付款功能
Mar 08 Python
浅谈numpy数组中冒号和负号的含义
Apr 18 Python
python:print格式化输出到文件的实例
May 14 Python
python实现多层感知器
Jan 18 Python
详解Python 4.0 预计推出的新功能
Jul 26 Python
python 实现单通道转3通道
Dec 03 Python
python 已知平行四边形三个点,求第四个点的案例
Apr 12 Python
Python爬虫如何破解JS加密的Cookie
Nov 19 Python
【超详细】八大排序算法的各项比较以及各自特点
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
关于页面优化和伪静态
2009/10/11 PHP
PHP中simplexml_load_string函数使用说明
2011/01/01 PHP
YII Framework框架教程之使用YIIC快速创建YII应用详解
2016/03/15 PHP
yii框架搜索分页modle写法
2016/12/19 PHP
js中的string.format函数代码
2020/08/11 Javascript
js中更短的 Array 类型转换
2011/10/30 Javascript
javascript自适应宽度的瀑布流实现思路
2013/02/20 Javascript
js变换显示图片的实例
2013/04/16 Javascript
Flex通过JS获取客户端IP和计算机名的实例代码
2013/11/21 Javascript
深入解读JavaScript中的Iterator和for-of循环
2015/07/28 Javascript
js获取所有checkbox的值的简单实例
2016/05/30 Javascript
RequireJS 依赖关系的实例(推荐)
2017/01/21 Javascript
原生js实现可拖动的登录框效果
2017/01/21 Javascript
Angularjs的$http异步删除数据详解及实例
2017/07/27 Javascript
AngularJS中的作用域实例分析
2018/05/16 Javascript
JavaScript轮播停留效果的实现思路
2018/05/24 Javascript
用element的upload组件实现多图片上传和压缩的示例代码
2019/02/12 Javascript
Python中输出ASCII大文字、艺术字、字符字小技巧
2015/04/28 Python
Python使用requests及BeautifulSoup构建爬虫实例代码
2018/01/24 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
python3实现windows下同名进程监控
2018/06/21 Python
Linux下python与C++使用dlib实现人脸检测
2018/06/29 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
2019/08/21 Python
Python实现朴素贝叶斯的学习与分类过程解析
2019/08/24 Python
python实现数据清洗(缺失值与异常值处理)
2019/12/02 Python
Python PyPDF2模块安装使用解析
2020/01/19 Python
Pytorch中的自动求梯度机制和Variable类实例
2020/02/29 Python
欧铁通票官方在线销售网站:Eurail.com
2017/10/14 全球购物
DogBuddy荷兰:找到你最完美的狗保姆
2019/04/17 全球购物
一道SQL面试题
2012/12/31 面试题
小班秋游活动方案
2014/02/22 职场文书
国庆促销活动总结
2014/08/29 职场文书
工作汇报开头与结尾怎么写
2014/11/08 职场文书
焦裕禄观后感
2015/06/03 职场文书
写给同事的离职感言
2015/08/04 职场文书
小学学习委员竞选稿
2015/11/20 职场文书