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利用elaphe制作二维条形码实现代码
May 25 Python
通过数据库向Django模型添加字段的示例
Jul 21 Python
Python 基础教程之str和repr的详解
Aug 20 Python
浅谈Python由__dict__和dir()引发的一些思考
Oct 30 Python
Python random模块用法解析及简单示例
Dec 18 Python
利用Python yagmail三行代码实现发送邮件
May 11 Python
python整合ffmpeg实现视频文件的批量转换
May 31 Python
简单了解python的一些位运算技巧
Jul 13 Python
Python装饰器的应用场景代码总结
Apr 10 Python
python读取图像矩阵文件并转换为向量实例
Jun 18 Python
在python中实现导入一个需要传参的模块
May 12 Python
Python中OpenCV实现简单车牌字符切割
Jun 11 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
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
深入array multisort排序原理的详解
2013/06/18 PHP
PHP设计模式(三)建造者模式Builder实例详解【创建型】
2020/05/02 PHP
jQuery EasyUI 开源插件套装 完全替代ExtJS
2010/03/24 Javascript
javascript定义函数的方法
2010/12/06 Javascript
自己使用js/jquery写的一个定制对话框控件
2014/05/02 Javascript
JS 弹出层 定位至屏幕居中示例
2014/05/21 Javascript
jQuery实现页面内锚点平滑跳转特效的方法总结
2015/05/11 Javascript
node.js读取文件到字符串的方法
2015/06/29 Javascript
跟我学习javascript解决异步编程异常方案
2015/11/23 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
seajs学习教程之基础篇
2016/10/20 Javascript
使用jQuery实现动态添加小广告
2017/07/11 jQuery
基于js实现抽红包并分配代码实例
2019/09/19 Javascript
Vue如何跨组件传递Slot的实现
2020/12/14 Vue.js
[02:54]DOTA2英雄基础教程 撼地者
2014/01/14 DOTA
[06:36]吞吞映像top1
2014/06/20 DOTA
python 多线程应用介绍
2012/12/19 Python
python判断一个集合是否包含了另外一个集合中所有项的方法
2015/06/30 Python
Python的Django框架中自定义模版标签的示例
2015/07/20 Python
Python用模块pytz来转换时区
2016/08/19 Python
Python检测生僻字的实现方法
2016/10/23 Python
python定向爬取淘宝商品价格
2018/02/27 Python
详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)
2019/11/11 Python
如何在 Django 模板中输出 "{{"
2020/01/24 Python
Python更换pip源方法过程解析
2020/05/19 Python
Python常用断言函数实例汇总
2020/11/30 Python
python中编写函数并调用的知识点总结
2021/01/13 Python
Under Armour澳大利亚官网:美国知名的高端功能性运动品牌
2018/02/22 全球购物
Nike德国官网:Nike.com (DE)
2018/11/13 全球购物
罗马尼亚购物网站:Vivantis.ro
2019/07/20 全球购物
C++:memset ,memcpy和strcpy的根本区别
2013/04/27 面试题
应聘自荐信
2013/12/14 职场文书
教师考核表个人总结
2015/02/12 职场文书
留学推荐信英文范文
2015/03/26 职场文书
2019请假条的基本格式及范文!
2019/07/05 职场文书