Python中os和shutil模块实用方法集锦


Posted in Python onMay 13, 2014
# os 模块os.sep 可以取代操作系统特定的路径分隔符。windows下为 '\\'
os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是 'posix'
os.getcwd() 函数得到当前工作目录,即当前Python脚本工作的目录路径
os.getenv() 获取一个环境变量,如果没有返回none
os.putenv(key, value) 设置一个环境变量值
os.listdir(path) 返回指定目录下的所有文件和目录名
os.remove(path) 函数用来删除一个文件
os.system(command) 函数用来运行shell命令
os.linesep 字符串给出当前平台使用的行终止符。例如,Windows使用 '\r\n',Linux使用 '\n' 而Mac使用 '\r'
os.path.split(path)  函数返回一个路径的目录名和文件名
os.path.isfile() 和os.path.isdir()函数分别检验给出的路径是一个文件还是目录
os.path.exists() 函数用来检验给出的路径是否真地存在
os.curdir  返回当前目录 ('.')
os.mkdir(path) 创建一个目录
os.makedirs(path) 递归的创建目录
os.chdir(dirname) 改变工作目录到dirname    
os.path.getsize(name) 获得文件大小,如果name是目录返回0L
os.path.abspath(name) 获得绝对路径
os.path.normpath(path) 规范path字符串形式
os.path.splitext()  分离文件名与扩展名
os.path.join(path,name) 连接目录与文件名或目录
os.path.basename(path) 返回文件名
os.path.dirname(path) 返回文件路径
os.walk(top,topdown=True,onerror=None)  遍历迭代目录
os.rename(src, dst)  重命名file或者directory src到dst 如果dst是一个存在的directory, 将抛出OSError. 在Unix, 如果dst在存且是一个file, 如果用户有权限的话,它将被安静的替换. 操作将会失败在某些Unix 中如果src和dst在不同的文件系统中. 如果成功, 这命名操作将会是一个原子操作 (这是POSIX 需要). 在 Windows上, 如果dst已经存在, 将抛出OSError,即使它是一个文件. 在unix,Windows中有效。
os.renames(old, new) 递归重命名文件夹或者文件。像rename()
# 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的东西
shutil.copy2( src, dst)  如果两个位置的文件系统是一样的话相当于是rename操作,只是改名;如果是不在相同的文件系统的话就是做move操作
shutil.copytree( olddir, newdir, True/Flase)
把olddir拷贝一份newdir,如果第3个参数是True,则复制目录时将保持文件夹下的符号连接,如果第3个参数是False,则将在复制的目录下生成物理副本来替代符号连接
shutil.rmtree( src ) 递归删除一个目录以及目录内的所有内容
Python 相关文章推荐
Python查询Mysql时返回字典结构的代码
Jun 18 Python
Python导出数据到Excel可读取的CSV文件的方法
May 12 Python
Python3爬虫教程之利用Python实现发送天气预报邮件
Dec 16 Python
Python3实现的判断环形链表算法示例
Mar 07 Python
利用Python实现微信找房机器人实例教程
Mar 10 Python
pyqt5 实现 下拉菜单 + 打开文件的示例代码
Jun 20 Python
详解python实现交叉验证法与留出法
Jul 11 Python
python扫描线填充算法详解
Feb 19 Python
一篇文章搞懂python的转义字符及用法
Sep 03 Python
sublime3之内网安装python插件Anaconda的流程
Nov 10 Python
Python 爬虫批量爬取网页图片保存到本地的实现代码
Dec 24 Python
Python matplotlib 利用随机函数生成变化图形
Apr 26 Python
Python中的jquery PyQuery库使用小结
May 13 #Python
Python getopt模块处理命令行选项实例
May 13 #Python
Python random模块(获取随机数)常用方法和使用例子
May 13 #Python
Python自动化测试工具Splinter简介和使用实例
May 13 #Python
Python获取远程文件大小的函数代码分享
May 13 #Python
Python FTP操作类代码分享
May 13 #Python
python生成指定尺寸缩略图的示例
May 07 #Python
You might like
文件上传的实现
2006/10/09 PHP
基于PHP生成静态页的实现方法
2013/05/10 PHP
php中strstr、strrchr、substr、stristr四个函数的区别总结
2014/09/22 PHP
完美解决thinkphp验证码出错无法显示的方法
2014/12/09 PHP
PHP中的self关键字详解
2019/06/23 PHP
50个优秀经典PHP算法大集合 附源码
2020/08/26 PHP
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
Node.js Streams文件读写操作详解
2016/07/04 Javascript
JS中使用DOM来控制HTML元素
2016/07/31 Javascript
jQuery之动画效果大全
2016/11/09 Javascript
jQuery实现简单的手风琴效果
2020/04/17 jQuery
分析javascript中9 个常见错误阻碍你进步
2017/09/18 Javascript
让bootstrap的carousel支持滑动滚屏的实现代码
2017/11/27 Javascript
bootstrap+jquery项目引入文件报错的解决方法
2018/01/22 jQuery
Angular中使用better-scroll插件的方法
2018/03/27 Javascript
JavaScript设计模式之工厂模式简单实例教程
2018/07/03 Javascript
jQuery插件实现弹性运动完整示例
2018/07/07 jQuery
在Vue项目中引入JQuery-ui插件的讲解
2019/01/27 jQuery
mocha的时序规则讲解
2019/02/16 Javascript
稍微学一下Vue的数据响应式(Vue2及Vue3区别)
2019/11/21 Javascript
vue实现鼠标移过出现下拉二级菜单功能
2019/12/12 Javascript
vuex 多模块时 模块内部的mutation和action的调用方式
2020/07/24 Javascript
浅析VUE防抖与节流
2020/11/24 Vue.js
打开电脑上的QQ的python代码
2013/02/10 Python
Python基于pygame实现的font游戏字体(附源码)
2015/11/11 Python
python多进程实现进程间通信实例
2017/11/24 Python
解决pandas使用read_csv()读取文件遇到的问题
2018/06/15 Python
python操作excel文件并输出txt文件的实例
2018/07/10 Python
python numpy库np.percentile用法说明
2020/06/08 Python
鞋类设计与工艺专业销售求职信
2013/11/01 职场文书
计算机专业应届生求职信
2014/04/06 职场文书
老师对学生的寄语
2014/04/09 职场文书
高中生操行评语大全
2014/04/25 职场文书
办公室主任个人总结
2015/02/28 职场文书
初中毕业生自我评价
2015/03/02 职场文书
小区环境卫生倡议书
2015/04/29 职场文书