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 相关文章推荐
Pythont特殊语法filter,map,reduce,apply使用方法
Feb 27 Python
Python编写简单的HTML页面合并脚本
Jul 11 Python
python自动登录12306并自动点击验证码完成登录的实现源代码
Apr 25 Python
python实现登录密码重置简易操作代码
Aug 14 Python
python 扩展print打印文件路径和当前时间信息的实例代码
Oct 11 Python
Python matplotlib以日期为x轴作图代码实例
Nov 22 Python
tensorflow模型保存、加载之变量重命名实例
Jan 21 Python
python 已知三条边求三角形的角度案例
Apr 12 Python
Python xml、字典、json、类四种数据类型如何实现互相转换
May 27 Python
python中format函数如何使用
Jun 22 Python
Python语言编写智力问答小游戏功能
Oct 13 Python
python读取mnist数据集方法案例详解
Sep 04 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的Yii框架中的缓存功能
2016/03/29 PHP
PHP对象、模式与实践之高级特性分析
2016/12/08 PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
2019/03/14 PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
2019/04/17 PHP
如何在PHP中读写文件
2020/09/07 PHP
Jquery弹出窗口插件 LeanModal的使用方法
2012/03/10 Javascript
jquery实现控制表格行高亮实例
2013/06/05 Javascript
Jquery左右滑动插件之实现超级炫酷动画效果附源码下载
2015/12/02 Javascript
AngularJS监听路由的变化示例代码
2016/09/23 Javascript
Vue 2.0中生命周期与钩子函数的一些理解
2017/05/09 Javascript
EasyUI的DataGrid绑定Json数据源的示例代码
2017/12/16 Javascript
详解vue-cli3多页应用改造
2019/06/04 Javascript
JS如何把字符串转换成json
2020/02/21 Javascript
Vue Render函数原理及代码实例解析
2020/07/30 Javascript
VUE项目实现主题切换的多种方法
2020/11/26 Vue.js
videocapture库制作python视频高速传输程序
2013/12/23 Python
通过代码实例展示Python中列表生成式的用法
2015/03/31 Python
在Python程序和Flask框架中使用SQLAlchemy的教程
2016/06/06 Python
用Python将动态GIF图片倒放播放的方法
2016/11/02 Python
使用Numpy读取CSV文件,并进行行列删除的操作方法
2018/07/04 Python
pandas把所有大于0的数设置为1的方法
2019/01/26 Python
python3.7 的新特性详解
2019/07/25 Python
css3实现冲击波效果的示例代码
2018/01/11 HTML / CSS
DC Shoes荷兰官方网站:美国极限运动品牌
2019/10/22 全球购物
澳大利亚领先的女性运动服品牌:Lorna Jane
2020/06/19 全球购物
外语学院毕业生的自我鉴定
2013/11/28 职场文书
幼儿园教研活动方案
2014/01/19 职场文书
洗车工岗位职责
2014/03/15 职场文书
会计电算化专业自荐信
2014/03/15 职场文书
中学生社会实践活动总结
2014/07/03 职场文书
2014年学生会主席工作总结
2014/11/07 职场文书
金秋助学感谢信
2015/01/21 职场文书
社区安置帮教工作总结2015
2015/05/20 职场文书
战友聚会致辞
2015/07/28 职场文书
vue @click.native 绑定原生点击事件
2022/04/22 Vue.js
python获取带有返回值的多线程
2022/05/02 Python