您的位置:首页 > 编程语言 > Python开发

十、Python高级功能之OS模块

2016-07-28 15:15 330 查看
Python高级功能之OS模块
目录操作就是通过Python来实现目录的创建,修改,遍历等功能import os目录操作需要调用os模块>>> import os>>> os.mkdir('test')一、常用函数mkdir(path[,mode=0777])makedirs(name,mode=551) #创建多级目录>>> os.makedirs('a/b/c')rmdir(path) #删除目录>>> os.rmdir('test')removedirs(path) #删除多级目录>>> os.removedirs('a/b/c')listdir(path) #查看目录>>> os.listdir('/')getcwd() #查看当前路径>>> os.getcwd()'/root/python'chdir(path) #切换目录>>> os.chdir('/')>>> os.getcwd()'/'walk(top,topdown=True,onerror=None) #递归函数,目录遍历,返回一个元组,该元组有3个元素,这3个元素分别表示每次遍历的路径名,目录列表和文件列表

二、目录遍历(查询目录下的所有文件)(1)#!/usr/bin/python#coding:utf8import osallfile = []def dirList(path): filelist = os.listdir(path) for filename in filelist: filepath = os.path.join(path,filename) if os.path.isdir(filepath): dirList(filepath) else: allfile.append(filepath) return allfile
def delFile(allfile): for fi in allfile: print fidirList('/root/python/testdir')delFile(allfile)
(2)#!/usr/bin/python#coding:utf8import osdef getList(paths): for p,dir,filelist in os.walk(paths): for filename in filelist: print os.path.join(p,filename)getList('/root/python/testdir')

三、案例:系统垃圾清除小工具(删除包含‘2’命名的文件,包含‘loyu‘字符的文件)#!/usr/bin/python#coding:utf8import osimport redef getList(paths): for p,dir,filelist in os.walk(paths): for filename in filelist: filedir = os.path.join(p,filename) contain = re.findall("2.",filename) if len(contain)==1: os.remove(filedir) else: openfile1 = open(filedir,'r') for s in openfile1.readlines(): containchar = re.findall("loyu",s) if len(containchar)>0: os.remove(filedir)getList('/root/python/testdir')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息