文件操作前提:路径名操作
os.path.splitext("c:\\mypro.txt"), ('c:\\mypro', '.txt')
os.path.dirname(path) os.path.dirname("c:\mywork\\oproo\\text.txt"),'c:\\mywork\\oproo'
os.path.basename("c:\mywork\\oproo\\text.txt")主文件名输出'text.txt'
os.mkdir(path, [mode])
path为目录名: 这里有个要求,只能创建一级目录
os.makedirs(path [,mode]) 可以创建多级目录
os.remove(path)删除一个文件,一定是一个文件
os.removedirs(path) 删除一个目录下所有东西
os.rmdir(path) 删除一个目录,而且一定要空,否则os.errer
os.walk(path)
遍历path,返回一个对象,他的每个部分都是一个三元组
('目录x',[目录x下的目录list],目录x下面的文件)
举例:
a = os.walk('.')
for i in a:
print i
shutil.copy(src,dst)
把文件src内容拷贝到文件dst中。,目标区域必须可以写,如果dst存在,则dst被覆盖
文件属性的获取及其设置:
expandvars(path)扩充环境变量
getatime返回最后访问时间
getmtime(path)返回修改时间
getctime返回系统最后修改时间
getsize
isabs是绝对路径吗?isfile是文件还是路径?islink对unix路径名的link
ismount是挂载点吗?
很重要的join
join(path1,path2,path3)连接目录
基础:怎么打开文件open(filename,mode,buffer)
该函数返回的是流类型对象。
mode有如下几种:
r:读模式(默认值)w:写模式 a:追加写模式 b:二进制模式 t:文本模式(默认值) +:更新已有硬盘文件(读和写模式)U:通用换行模式(Universal new line mode)
如果到打开的文件不存在或者其他问题,会跑出IOError异常。
tell():获取在当前文件中,目前所处的位置。起始值为0.
seek(position,mode):在当前文件中移动。其中第一个参数是要移动的距离,第二个参数是模式:0表示移动绝对位置,相对于文件头而言;1表示移动相对位置,就当前位置而言;2表示相对于文件尾的位置。
read(max_byte_num):从文件中读取字节。max_byte_number为可选参数,表示读取的最大字节数。如果不选,默认为读取到文件尾。读取后,当前位置会发生变化,即增加读取的字节数。
readline():一次读取文件的一行。
readlines()存为list(列表)
write(content):向文件中写数据。content为要写入的内容。
close():关闭文件