码迷,mamicode.com
首页 > 编程语言 > 详细

python下通过os模块和shutil模块进行文件处理方式

时间:2016-08-01 23:27:20      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:windows   python   command   linux   扩展名   

python下通过os模块和shutil模块进行文件处理方式


得到当前工作目录路径:os.getcwd()

获取指定目录下的所有文件和目录名:os.listdir(dir)

删除文件:os.remove(file)

删除多个目录:os.removedirs(r"/home")

检测路径是否为文件:os.path.isfile(path)

检测路径是否为目录:os.path.isdir(path)

判断是否为绝对路径:os.path.isabs(path)

检测路径是否存在:os.path.exists(path)

返回一个路径的目录名和文件名:os.path.split(path)

分离扩展名:os.path.splitext(file)

获取路径名:os.path.dirname(file)

获取文件名:os.path.basename(file)

运行shell命令:os.system(command)

读取和设置环境变量:os.getenv()与os.putenv()

给出当前平台的行终止符:os.linesep (windows为\r\n linux为\n Mac为\r)

指示你正在使用的平台:os.name(windows为nt,linux为posix)

重命名:os.rename(old,new)

创建多级目录:os.makedirs(r"c:\python\test")

创建单个目录:os.mkdir("test")

获取文件属性:os.stat(file)

修改文件权限与时间戳:os.chmod(file)

终止当前进程:os.exit()

获取文件大小:os.path.getsize(filename)


文件操作:

文件内容替换

for line in fileinput.input("filepath",inplace=1):

line = line.replace("oldtext","newtext")

print line


os.mknod("text.txt")创建空文件

fp = open("text.txt",‘w‘) 直接打开一个文件,如果不存在则创建文件

关于open模式:

w 以写的方式打开(如果文件存在会清空文件内容)

a 以追加的模式打开(从EOF开始,必要时创建新文件)

r+ 以读写模式打开

w+ 以读写模式打开(参见w)

a+ 以读写模式打开(参见a)

rb 以二进制模式打开

wb 以二进制模式打开(参见w)

ab 以二进制追加模式打开(参见a)

rb+ 以二进制读写模式打开(参见r+)

wb+ 以二进制读写模式打开(参见w+)

ab+ 以二进制读写模式打开(参见a+)


fp.read([size]) #size读取长度,以byte为单位

fp.readline([size]) #读一行,如果定义了size有可能返回的只是一行的一部分

fp.readlines([size]) #把文件每一行作为一个list的一个成员,并返回这个list其实它的内容是通过循环调用readline()实现的,如果提供size参数,size表示读取内容的总长,也就是说可能只读到文件的一部分

fp.write(str) #把str写到文件中,write()并不会在str后加上一个换行符

fp.writelines(seq) #把seq的内容全部写到文件中(多行一次性写入),不会加任何东西

fp.close() #关闭文件。python会在一个文件不用后自动关闭,不过这一功能没有保证

fp.flush() #把缓冲区的内容写入磁盘

fp.fileno() #返回一个长整形的文件标签

fp.isatty() #文件是否是一个终端设备文件

fp.tell() #返回文件操作标记的当前位置,以文件的开头为原点

fp.next() #返回下一行,并将文件操作标记位移到下一行

fp.seek(offset[,whence]) #将文件操作标记位移到offset的位置,这个offset一般是相对于文件的开头来计算的,一般为正数,但如果提供了whence参数就不一定了,whence可以为0表示从头开始计算,1表示以当前位置为原点计算,2表示以文件末尾为原点计算。需要注意,如果文件以a或者a+模式打开,每次进行写操作时,文件操作标记会自动返回到文件末尾

fp.truncate([size]) #把文件裁成规定大小,默认的是裁到当前文操作标记的位置


目录操作:

os.mkdir("file") #创建目录

shutil.copyfile("oldfile","newfile") #oldfile和newfile只能是文件

shutil.copy("oldfile","newfile")#oldfile只能是文件夹,newfile可以是文件或者目标目录

shutil.copytree("olddir","newdir") #复制文件夹,newdir必须不存在

os.rename("oldname","newname") #重命名文件或目录

shutil.move("oldpos","newpos") #移动文件或目录

os.remove("file") #删除文件

os.rmdir("dir") #只能删除空目录

shutil.retree("dir") #有内容或空目录都可以删

os.chdir("path") #换路径


本文出自 “高好亮” 博客,请务必保留此出处http://gaohl.blog.51cto.com/11862544/1833027

python下通过os模块和shutil模块进行文件处理方式

标签:windows   python   command   linux   扩展名   

原文地址:http://gaohl.blog.51cto.com/11862544/1833027

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!