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 相关文章推荐
在Django框架中设置语言偏好的教程
Jul 27 Python
Python 多线程实例详解
Mar 25 Python
Python异常对代码运行性能的影响实例解析
Feb 08 Python
详解django的serializer序列化model几种方法
Oct 16 Python
selenium python 实现基本自动化测试的示例代码
Feb 25 Python
python如何将多个PDF进行合并
Aug 13 Python
python 日志 logging模块详细解析
Mar 31 Python
Selenium基于PIL实现拼接滚动截图
Apr 10 Python
python中导入 train_test_split提示错误的解决
Jun 19 Python
python判断字符串以什么结尾的实例方法
Sep 18 Python
Python Django模型详解
Oct 05 Python
Pandas实现批量拆分与合并Excel的示例代码
May 30 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下使用无限生命期Session的方法
2007/03/16 PHP
通用PHP动态生成静态HTML网页的代码
2010/03/04 PHP
PHP curl 并发最佳实践代码分享
2012/09/05 PHP
PHP加密解密实例分析
2015/12/25 PHP
Joomla开启SEF的方法
2016/05/04 PHP
php metaphone()函数及php localeconv() 函数实例解析
2016/05/15 PHP
浅析PHP中的i++与++i的区别及效率
2016/06/15 PHP
PHP中函数gzuncompress无法使用的解决方法
2017/03/02 PHP
PHP实现二维数组(或多维数组)转换成一维数组的常见方法总结
2019/12/04 PHP
表格奇偶行设置不同颜色的核心JS代码
2013/12/24 Javascript
基于JQuery实现的Select级联
2014/01/27 Javascript
jQuery焦点图切换简易插件制作过程全纪录
2014/08/27 Javascript
js日期范围初始化得到前一个月日期的方法
2015/05/05 Javascript
Node.js的环境安装配置(使用nvm方式)
2016/10/11 Javascript
微信小程序的分类页面制作
2017/06/27 Javascript
解决vue2.x中数据渲染以及vuex缓存的问题
2017/07/13 Javascript
React Native预设占位placeholder的使用
2017/09/28 Javascript
使用express+multer实现node中的图片上传功能
2018/02/02 Javascript
vue 组件中slot插口的具体用法
2018/04/03 Javascript
js中时间格式化的几种方法
2018/07/22 Javascript
解决layui-open关闭自身窗口的问题
2019/09/10 Javascript
微信小程序canvas截取任意形状的实现代码
2020/01/13 Javascript
OpenLayers3实现地图鹰眼以及地图比例尺的添加
2020/09/25 Javascript
[15:28]DOTA2 HEROS教学视频教你分分钟做大人-剧毒术士
2014/06/13 DOTA
Python生成验证码实例
2014/08/21 Python
Python 字典与字符串的互转实例
2017/01/13 Python
使用python遍历指定城市的一周气温
2017/03/31 Python
Windows系统Python直接调用C++ DLL的方法
2019/08/01 Python
Python OpenCV去除字母后面的杂线操作
2020/07/05 Python
美国儿童运动鞋和服装零售商:Kids Foot Locker
2017/08/05 全球购物
十佳教师事迹材料
2014/01/11 职场文书
党员2014两会学习心得体会
2014/03/17 职场文书
教师三严三实对照检查材料
2014/09/25 职场文书
世界遗产导游词
2015/02/13 职场文书
2015年学校综合治理工作总结
2015/07/20 职场文书
深度学习小工程练习之垃圾分类详解
2021/04/14 Python