Python三种遍历文件目录的方法实例代码

yipeiwu_com5年前Python基础

本文实例代码主要实现的是python遍历文件目录的操作,有三种方法,具体代码如下。

#coding:utf-8 
 
# 方法1:递归遍历目录 
 
import os 
def visitDir(path): 
  li = os.listdir(path) 
  for p in li: 
    pathname = os.path.join(path,p) 
    if not os.path.isfile(pathname):  #判断路径是否为文件,如果不是继续遍历 
      visitDir(pathname) 
    else: 
      print pathname 
 
if __name__ == "__main__": 
  path = r"/Users/GaoHongxing/Desktop" 
visitDir(path) 
      
# 方法2:函数递归 os.path.walk() 
 
import os, os.path 
 
def visitDir(arg, dirname, names): 
  for filepath in names: 
    print os.path.join(dirname, filepath) 
     
if __name__ == "__main__": 
  path = r"/Users/GaoHongxing/Desktop" 
  os.path.walk(path,visitDir,()) 
 
 
# 方法3: 函数递归os.walk() 
import os 
 
def visitDir(path): 
  for root, dirs, files in os.walk(path): 
    for filepath in files: 
      print os.path.join(root, filepath) 
       
if __name__ == "__main__": 
  path = r"/Users/GaoHongxing/Desktop"  
  visitDir(path)  
 
""" 
os.path.walk()与os.walk()产生的文件名列表不同: 
os.walk() 只产生文件路径 
os.path.walk()  产生目录树下的目录路径和文件路径 
""" 

总结

以上就是本文关于Python三种遍历文件目录的方法实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

pandas 根据列的值选取所有行的示例

如下所示: # 选取等于某些值的行记录 用 == df.loc[df['column_name'] == some_value] # 选取某列是否是某一类型的数值 用 isin...

深入理解Python中的元类(metaclass)

译注:这是一篇在Stack overflow上很热的帖子。提问者自称已经掌握了有关Python OOP编程中的各种概念,但始终觉得元类(metaclass)难以理解。他知道这肯定和自省有...

Python自动化构建工具scons使用入门笔记

Python自动化构建工具scons使用入门笔记

这段时间用到了scons,这里总结下,也方便我以后查阅。 一、安装scons Linux环境(以CentOS为例) 1、yum安装 yum install scons 2、源码安装 下载...

python基础教程之序列详解

sequence 序列 sequence(序列)是一组有顺序的元素的集合 (严格的说,是对象的集合,但鉴于我们还没有引入“对象”概念,暂时说元素) 序列可以包含一个或多个元素,也可以没有...

Pycharm技巧之代码跳转该如何回退

Pycharm技巧之代码跳转该如何回退

背景 最近玩Python已经有段时间了, 一般都是通过vim和Pycharm来开发, 真心觉得这两个是神器. Vim神器暂且不说, 今天来分享Pycharm的一个小技巧,下面话不多说,...