python中os模块详解


Posted in Python onOctober 14, 2016

os模块提供了对目录或者文件的新建/删除/查看文件属性,还提供了对文件以及目录的路径操作。比如说:绝对路径,父目录……

os.sep可以取代操作系统特定的路径分隔符。windows下为 “\\”,Linux下为"/"

os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'。

os.pathsep 输出用于分割文件路径的字符串,系统使用此字符来分割搜索路径(像PATH),例如POSIX上':',Windows上的';'

os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径

os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd

os.curdir 返回当前目录: ('.')

os.pardir 获取当前目录的父目录字符串名:('..')

os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname

os.makedirs('dirname1/dirname2') 可生成多层递归目录

os.remove(file) 删除一个文件

os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推

os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname

os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印

os.rename("oldname","newname") 重命名文件/目录,如果newname存在则替换出现错误

os.replace(src,dest) 重命名文件/目录,如果dest表示的是文件,存在则覆盖原来的文件,不报错;若是目录,存在则会报错

os.chmod(path, mode, *, dir_fd=None, follow_symlinks=True)

Ex:os.chmod('C:\\my_share_file\\test.sh',755)

os.stat('path/filename') 获取文件/目录信息

os.utime(path,times) 修改时间属性 times是个元组,(atime,mtime),这两个时间数可以通过os.stat获取

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

1.top表示需要遍历的目录树的路径

2.topdown的默认值是”True”,表示首先返回目录树下的文件,然后在遍历目录树的子目录.Topdown的值为”False”时,

则表示先遍历目录树的子目录,返回子目录下的文件,最后返回根目录下的文件

3.onerror的默认值是”None”,表示忽略文件遍历时产生的错误.如果不为空,则提供一个自定义函数提示错误信息后继续遍历或抛出异常中止遍历

该函数返回一个元组,该元组有3个元素,这3个元素分别表示当前遍历的目录,当前遍历的目录列表,当前遍历的目录的文件列表

os.walk()举例:

>>> import os

>>> for root, dirs, files in os.walk("wd/chat", topdown=False):

... for name in files:

... print(os.path.join(root, name)) #打印文件绝对路径

... for name in dirs:

... print(os.path.join(root, name)) #打印目录绝对路径

os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。

os.getenv()获取一个环境变量,如果没有返回none

os.putenv(key, value)设置一个环境变量值

os.environ[]获取环境变量的值 两者等价:os.environ[‘HOME'] <->os.getenv(‘HOME')

os.system(command)函数用来运行shell命令。

os.popen("bash command") 运行shell命令,生成对象,可赋给变量,再用read读取

Python 相关文章推荐
给Python初学者的一些编程技巧
Apr 03 Python
在Python中使用HTMLParser解析HTML的教程
Apr 29 Python
python生成器表达式和列表解析
Mar 10 Python
python Pexpect 实现输密码 scp 拷贝的方法
Jan 03 Python
Python图像处理之图像的读取、显示与保存操作【测试可用】
Jan 04 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
Apr 26 Python
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
May 07 Python
python_mask_array的用法
Feb 18 Python
Python Opencv中用compareHist函数进行直方图比较对比图片
Apr 07 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
May 18 Python
python import 上级目录的导入
Nov 03 Python
python 从list中随机取值的方法
Nov 16 Python
python append、extend与insert的区别
Oct 13 #Python
CentOS6.5设置Django开发环境
Oct 13 #Python
Python判断某个用户对某个文件的权限
Oct 13 #Python
python使用str &amp; repr转换字符串
Oct 13 #Python
PYTHON 中使用 GLOBAL引发的一系列问题
Oct 12 #Python
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
Oct 12 #Python
shelve  用来持久化任意的Python对象实例代码
Oct 12 #Python
You might like
德劲1104的电路分析与改良
2021/03/01 无线电
开发大型PHP项目的方法
2006/10/09 PHP
smtp邮件发送一例
2006/10/09 PHP
Java中final关键字详解
2015/08/10 PHP
PHP简单预防sql注入的方法
2016/09/27 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
Phpstorm+Xdebug断点调试PHP的方法
2018/05/14 PHP
jQuery 技巧小结
2010/04/02 Javascript
用JQUERY增删元素的代码
2012/02/14 Javascript
JavaScript中的数学运算介绍
2014/12/29 Javascript
jquery实现简单的遮罩层
2016/01/08 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
原生js的RSA和AES加密解密算法
2016/10/08 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
2017/03/13 Javascript
ECMAScript6变量的解构赋值实例详解
2017/09/19 Javascript
Vue侧滑菜单组件——DrawerLayout
2017/12/18 Javascript
react-router4按需加载(踩坑填坑)
2019/01/06 Javascript
vue实现多组关键词对应高亮显示功能
2019/07/25 Javascript
原生js实现无缝轮播图
2020/01/11 Javascript
ant-design-vue 快速避坑指南(推荐)
2020/01/21 Javascript
Python中模拟enum枚举类型的5种方法分享
2014/11/22 Python
Python中Django 后台自定义表单控件
2017/03/28 Python
使用python遍历指定城市的一周气温
2017/03/31 Python
简单实现python进度条脚本
2017/12/18 Python
NumPy 如何生成多维数组的方法
2018/02/05 Python
详谈python3中用for循环删除列表中元素的坑
2018/04/19 Python
python xlsxwriter创建excel图表的方法
2018/06/11 Python
Python 多线程不加锁分块读取文件的方法
2018/12/11 Python
selenium3.0+python之环境搭建的方法步骤
2021/02/01 Python
团员的自我评价
2013/12/01 职场文书
中专三年学习的个人自我评价
2013/12/12 职场文书
学校查摆问题整改措施
2014/09/28 职场文书
2014年师德师风工作总结
2014/11/25 职场文书
物资采购管理制度
2015/08/06 职场文书
2019年员工旷工保证书!
2019/06/28 职场文书
婚前协议书怎么写,才具有法律效力呢 ?
2019/06/28 职场文书