用Python遍历目录
用Python遍历指定目录下的文件,一般有两种常用方法,但它们都是基于Python的os模块。下面两种方法基于Python2.7,主要用到的函数如下:
1.os.listdir(path):列出目录下的所有文件名
2.os.getcwd():获得当前工作目录
3.os.mkdir(dir):创建单个目录
4.os.makedirs('c:\python\a'):创建多级目录
5.os.rmdir(dir):删除单个目录
6.os.removedirs('D:\python'):删除所给路径最后一个目录下所有空目录
7.os.chdir(dir):改变到另一个工作目录上
8.os.path.isfile(path):判断是否是文件
9.os.path.isdir(path):判断是否是目录
10.os.path.join(path,filename):得到文件绝对路径
11.os.chmod(file):修改文件权限与时间戳
12.os.system("dir"):执行操作系统命令
13.os.exec(), os.execvp():启动新进程
14.osspawnv():在后台执行程序
15.os.exit(), os._exit():终止当前进程
16.os.path.split('c:\python\hello.py') --> ('c:\\python', 'hello.py'):分离文件名
17.os.path.splitext('c:\python\hello.py') --> ('c:\\python\\hello', '.py'):分离扩展名
18.os.path.dirname('c:\python\hello.py') --> 'c:\\python':获取路径名
19.os.path.basename('c:\python\hello.py') --> 'hello.py':获取文件名
20.os.path.exists('c:\python\hello.py') --> True:判断文件或目录是否存在
21.os.path.isabs('.\python\') --> False:判断是否是绝对路径
22.os.path.islink('c:\python\hello.py') --> False:判断是否是链接文件
23.os.path.getsize(filename):获取文件大小
24.os.walk():搜索目录下的所有文件
第一种是基于递归函数:
#!/usr/bin/python
# coding:utf-8 import os
def dirList(path):
filelist = os.listdir(path)
for filename in filelist:
filepath = os.path.join(path, filename)
if os.path.isdir(filepath):
print filepath
dirList(filepath)
else:
print filepath dirList('C:\\Users\\Desktop\\Learning python')
第二种是用os模块下的walk()函数:
#!/usr/bin/python
# coding:utf-8 Epath=os.walk('C:\\Users\\Desktop\\Learning python')
for path,dir,filelist in Epath:
for filename in filelist:
print os.path.join(path,filename)
os.walk()函数返回一个元组,该元组有3个元素,这3个元素分别表示每次遍历的路径名,目录列表和文件列表。
注:sublime text编辑器下,代码开头加上#coding:utf-8,可以处理代码中出现的中文字符。以上两种方法在遍历中文名文件或文件名时,sublime中使用Ctrl+B会出现:
[Decode error - output not utf-8]
错误。但在Python shell或cmd中都可以正常显示中文。
用Python遍历目录的更多相关文章
- python遍历目录文件脚本的示例
例子 自己写的一个Python遍历文件脚本,对查到的文件进行特定的处理.没啥技术含量,但是也记录一下吧. 代码如下 复制代码 #!/usr/bin/python# -*- coding: utf-8 ...
- python遍历目录os.walk(''d:\\test2",topdown=False)
os.walk(top, topdown=True, onerror=None, followlinks=False)遍历目录,topdown=false表示先返回目录,后返回文件 参数说明: top ...
- Python遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例
遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例: #-*- encoding: utf-8 -*- __author__ = 'liudong' import linecache,sys ...
- Python 遍历目录
代码: 1.递归使用遍历目录 import os def scanfile(path): filelist = os.listdir(path) allfile = [] for filename i ...
- Python 遍历目录下的子目录和文件
import os A: 遍历目录下的子目录和文件 for root,dirs ,files in os.walk(path) root:要访问的路径名 dirs:遍历目录下的子目录 files:遍历 ...
- Python遍历目录下xlsx文件
对指定目录下的指定类型文件进行遍历,可对文件名关键字进行条件筛选 返回值为文件地址的列表 import os # 定义一个函数,函数名字为get_all_excel,需要传入一个目录 def get_ ...
- python遍历目录下所有文件
# -*- coding:utf-8 -*- import os if __name__ == "__main__": rootdir = '.\data' list = os.l ...
- python遍历目录
os.walk() 用元组表示(dirpath, dirnames, filenames): 第一个是根路径,dirpath为str类型: 第二个是根路径中的文件夹,dirnames为list类型: ...
- python遍历目录的方法 walk listdir
这篇文章里描述了这些情况: https://www.cnblogs.com/jiaxin359/p/7324077.html 不用递归的时候,用 listdir 需要递归的时候,用walk
随机推荐
- c++中的内存空间不足和自定义处理内存不足
new操作符动态分配内存时,首先它会调用对象的operator new()函数分配相应大的内存(如果对象类没有重载operator new()函数,则默认调用<new>头文件里的opera ...
- linq group by子句
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- javascript 正在加载中,请稍后效果实现
/*蒙版*/ .loading-mask { width: 100%; height: 100%; position: fixed; top:; left:; right:; bottom:; bac ...
- phar文件的使用
1.用php命令行 php phar文件 2.生成bat文件,在命令行下使用,以composer.phar为例 ( 1)在php.exe所在目录新建composer.bat文件 (2)把compose ...
- 【转载】 Java 7之基础 - 强引用、弱引用、软引用、虚引用
原文地址:http://blog.csdn.net/mazhimazh/article/details/19752475 1.强引用(StrongReference) 强引用是使用最普遍的引用.如果一 ...
- Nginx中文域名配置
Nginx虚拟主机上绑定一个带中文域名,比如linuxeye.中国,浏览器不能跳转. why? 因为操作系统的核心都是英文组成,DNS服务器的解析也是由英文代码交换,所以DNS服务器上并不支持直接的中 ...
- 获取tp-link中的拨号密码
一日,公司网络巨慢,丢包非常严重,打电话给电信,说信号稳定,可能是我们的路由器有问题,让我们直接用电脑拨号 心中一闷,鬼知道拨号密码是多少,于是百度了一下,大概有以下几种方法 一.使用工具,把路由器的 ...
- 【SharePoint学习笔记】第2章 SharePoint Windows PowerShell 指南
快速了解Windows PowerShell 从SharePoint 2010开始支持PowerShell,仍支持stsadm.exe工具: 可以调用.NET对象.COM对象.exe文 ...
- PHP 获取指定目录下所有文件(包含子目录)
PHP 获取指定目录下所有文件(包含子目录) //glob — 寻找与模式匹配的文件路径 $filter_dir = array('CVS', 'templates_c', 'log', 'img', ...
- https 双向证书
一:服务器端 1.首先需要配置站点的SSl证书 打开Nginx安装目录下conf目录中的nginx.conf文件 找到 # HTTPS server # #server { ...