码迷,mamicode.com
首页 > 其他好文 > 详细

os、os.path、shutil操作文件和文件路径的常用方法总结

时间:2017-09-04 16:02:52      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:except   功能   拷贝   覆盖   写入   关闭   com   方法总结   exception   

os模块是python标准库中的一个用于访问操作系统功能的模块,下面简要介绍一下常用的命令
1、os.name().    判断现在正在使用的平台,windows返回’nt’,Linux返回‘posix’
2、os.getcwd()  得到当前工作的目录
3、os.listdir().   指定所在目录下民所有的文件和目录名
4、os.remove(). 删除指定文件
5、os.rmdir().    删除置顶目录
6、os.mkdir().   创建目录
7、os.system(). 执行shell命令
8、os.chdir().    改变目录到指定目录
9、os.getenv()与os.putenv() 读取和设置环境变量
10 、os.linesep 给出当前平台使用的行终止符, windows使用’\r\n’,linux使用’\n’,而Mac使用’\r’
11、os.rename(old,new) 重命名
12、os.makedirs(r”c:\python\test”) 创建多级目录
13、os.stat(file)  获取文件属性
14、os.chmod(file) 修改文件权限和时间戳
15、os.exit()  终止当前进程
文件操作方法大全:
16、os.mknod(“text.txt”) 创建空文件
17、fp = open(“text.txt”,w) 直接打开一个文件,如果文件不存在就创建文件
18、关于open模式
W:以写方式打开
A:以追加模式打开(从EOF开始,必要时创建新文件)
r+:以读写模式打开
w+:以读写模式打开
a+: 以读写模式打开
rb:以二进制读模式打开
wb :以二进制写模式打开
ab:以二进制追加模式打开
rb+:以二进制读写模式打开
wb+:以二进制读写模式打开
ab+:以二进制读写模式打开
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会在一个文件不用后自动关闭文件,不过这一功能没有保证,最好还是养成自己关闭的习惯。如果一个文件在关闭后还对其进行操作会产生valueerror
fp.flush().  把缓冲区的内容写入硬盘
Fp.fileno().  返回一个长整型的“文件标签”
fp.isatty().  文件是否是一个终端设备文件(unix系统???的)
fp.tell()。返回文件操作标记的当前位置,以文件额度开头为原点
fp.next().   返回下一行,并将文件操作标记移到下一行。把一个file用于for...in file这样的语句时,就是调用next()函数来实现便利的
fp.seek(offset[,whence]) 将文件打操作标记移到offset的位置。这个offset一般是相对于文件的开头来计算的。一般为正数。但如果提供了whence参数就不一定了,whence可以为0表示从头开始计算,1表示以当前位置为原点计算,2表示以文件末尾为原点进行计算。需要注意,如果文件以a或者a+的模式打开,每次进行写操作时,文件操作标记会自动返回到文件末尾
19、转换目录
Os.chdir(“path”). 换路径
 
 
os.path的相关用法
1、os.path.isfile().   判断指定对象是否为文件,是就返回True,否就返回False
2、os.path.isdir().    判断指定对象是否是目录。是True,否则False
3、os.path.exists().  检验指定的对象是否存在。是就返回True,否就返回False
4、os.path.split().    返回路径的目录和文件名
5、os.path.getsize().  获得文件的大小,如果为目录,返回0
6、os.path.abspath().  获取绝对路径
7、os.path.join(path,name). 连接目录和文件名
8、os.path.basename(path). 返回文件名
9、 os.path.dirname(path).    返回文件路径
10、os.path.normpath(path).  规范path字符串形式
11、os.path.splittext().      分离文件名与扩展名
12、 os.path.isabs(path) .    如果path 是绝对路径,就返回True
13、os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
14、os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
15、os.path.realpath()。 获取程序所在的实际目录
 
 
 
shutil的功能介绍
shutil.copyfile(src, dst)从源src复制到dst中去。当然前提是目标地址是具备可写权限。抛出的异常信息为IOException。如果当前的dst已存在的话就会被覆盖掉
shutil.move(src, dst). 移动文件或重命名
shutil.copymode(src,dst). 只是会复制其权限,其他的东西是不会被复制的
shutil.copystat(src,dst). 复制权限、最后访问时间、最后修改时间
shutil.copy(src, dst). 复制一个文件到另一个文件或者一个目录
shutil.copy2(src,dst). 在copy的基础上再复制文件最后访问时间与修改时间也复制过来了,类似于cp -p的东西
如果两个位置的文件系统是一样的话相当于rename操作,只是改名;如果是不在相同的文件系统的话就是move操作
shutil.copytree(older,newdir,True/False)把olddir拷贝一份newdir,如果第三个参数是True,则复制目录时将保持文件夹下的符号链接,如果第三个参数是False,则将在复制的目录下生成物理副本来替代符号连接
Shutil.mtree(src). 递归删除一个目录以及目录内的所有内容 

os、os.path、shutil操作文件和文件路径的常用方法总结

标签:except   功能   拷贝   覆盖   写入   关闭   com   方法总结   exception   

原文地址:http://www.cnblogs.com/yingqml/p/7473851.html

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