python中操作文件的模块的方法总结
在python中操作文件算是一个基本操作,但是选对了模块会让我们的效率大大提升。本篇整理了两种模块的常用方法,分别是os模块和shutil模块。相信这两种模块大家在之间的学习中有所涉及,那么关于具体的文件操作部分,我们一起往下看看都有哪些方法和实例吧。
本教程操作环境:windows7系统、Python3版、DellG3电脑。
Python对文件操作采用的统一步骤是:打开—操作—关闭。
一、python中对文件、文件夹操作时经常用到的os模块和shutil模块常用方法
1.得到当前工作目录,即当前Python脚本工作的目录路径:os.getcwd()
2.返回指定目录下的所有文件和目录名:os.listdir()
3.函数用来删除一个文件:os.remove()
4.删除多个目录:os.removedirs(r"c:\python")
5.检验给出的路径是否是一个文件:os.path.isfile()
6.检验给出的路径是否是一个目录:os.path.isdir()
7.判断是否是绝对路径:os.path.isabs()
8.检验给出的路径是否真地存:os.path.exists()
9.返回一个路径的目录名和文件名:os.path.split()
二、文件综合操作实例
将文件夹下所有图片名称加上'_fc'
#-*-coding:utf-8-*- importre importos importtime #str.split(string)分割字符串 #'连接符'.join(list)将列表组成字符串 defchange_name(path): globali ifnotos.path.isdir(path)andnotos.path.isfile(path): returnFalse ifos.path.isfile(path): file_path=os.path.split(path)#分割出目录与文件 lists=file_path[1].split('.')#分割出文件与文件扩展名 file_ext=lists[-1]#取出后缀名(列表切片操作) img_ext=['bmp','jpeg','gif','psd','png','jpg'] iffile_extinimg_ext: os.rename(path,file_path[0]+'/'+lists[0]+'_fc.'+file_ext) i+=1#注意这里的i是一个陷阱 #或者 #img_ext='bmp|jpeg|gif|psd|png|jpg' #iffile_extinimg_ext: #print('ok---'+file_ext) elifos.path.isdir(path): forxinos.listdir(path): change_name(os.path.join(path,x))#os.path.join()在路径处理上很有用 img_dir='D:\\xx\\xx\\images' img_dir=img_dir.replace('\\','/') start=time.time() i=0 change_name(img_dir) c=time.time()-start print('程序运行耗时:%0.2f'%(c)) print('总共处理了%s张图片'%(i))
实例扩展:
#!python3 #-*-coding:utf-8-*- #Autor:GrayMac importshutil importos basefileclass='basefile' #sourcefile:源文件路径fileclass:源文件夹destinationfile:目标文件夹路径 defcopy_file(sourcefile,fileclass,destinationfile): #遍历目录和子目录 forfilenamesinos.listdir(sourcefile): #取得文件或文件名的绝对路径 filepath=os.path.join(sourcefile,filenames) #判断是否为文件夹 ifos.path.isdir(filepath): iffileclass==basefileclass: copy_file(filepath,fileclass+'/'+filenames,destinationfile+'/'+filenames) else: copy_file(filepath,fileclass,destinationfile+'/'+filenames) #判断是否为文件 elifos.path.isfile(filepath): print('Copy%s'%filepath+'To'+destinationfile) #如果无文件夹则重新创建 ifnotos.path.exists(destinationfile): os.makedirs(destinationfile) shutil.copy(filepath,destinationfile) copy_file(sourcefile,basefileclass,destinationfile)
到此这篇关于python中操作文件的模块的方法总结的文章就介绍到这了,更多相关python中操作文件的模块有几种内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!