Python中os模块功能与用法详解


Posted in Python onFebruary 26, 2020

本文实例讲述了Python中os模块功能与用法。分享给大家供大家参考,具体如下:

OS模块

Python的os模块封装了常见的文件和目录操作,本文只是列出部分常用的方法,更多的方法可以查看官方文档。

下面是部分常见的用法:

方法 说明
os.mkdir 创建目录
os.rmdir 删除目录
os.rename 重命名
os.remove 删除文件
os.getcwd 获取当前工作路径
os.walk 遍历目录
os.path.join 连接目录与文件名
os.path.split 分割文件名与目录
os.path.abspath 获取绝对路径
os.path.dirname 获取路径
os.path.basename 获取文件名或文件夹名
os.path.splitext 分离文件名与扩展名
os.path.isfile 判断给出的路径是否是一个文件
os.path.isdir 判断给出的路径是否是一个目录

例子

后文的例子以下面的目录结构为参考,工作目录为/Users/ethan/coding/python。

Python中os模块功能与用法详解 
看看例子:

  • os.path.abspath:获取文件或目录的绝对路径
$ pwd
/Users/ethan/coding/python
$ python
>>> import os             # 记得导入 os 模块
>>> os.path.abspath('hello.py')
'/Users/ethan/coding/python/hello.py'
>>> os.path.abspath('web')
'/Users/ethan/coding/python/web'
>>> os.path.abspath('.')        # 当前目录的绝对路径
'/Users/ethan/coding/python'
  • os.path.dirname:获取文件或文件夹路径
>>> os.path.dirname('/Users/ethan/coding/python/hello.py')
'/Users/ethan/coding/python'
>>> os.path.dirname('/Users/ethan/coding/python/')
'/Users/ethan/coding/python'
>>> os.path.dirname('/Users/ethan/coding/python')
'/Users/ethan/coding'
  • os.path.basename:获取文件名或文件夹名
>>> os.path.basename('/Users/ethan/coding/python/hello.py')
'hello.py'
>>> os.path.basename('/Users/ethan/coding/python/')
''
>>> os.path.basename('/Users/ethan/coding/python')
'python'
  • os.path.splitext:分离文件名与扩展名
>>> os.path.splitext('/Users/ethan/coding/python/hello.py')
('/Users/ethan/coding/python/hello', '.py')
>>> os.path.splitext('/Users/ethan/coding/python')
('/Users/ethan/coding/python', '')
>>> os.path.splitext('/Users/ethan/coding/python/')
('/Users/ethan/coding/python/', '')
  • os.path.split:分离目录与文件名
>>> os.path.split('/Users/ethan/coding/python/hello.py')
('/Users/ethan/coding/python', 'hello.py')
>>> os.path.split('/Users/ethan/coding/python/')
('/Users/ethan/coding/python', '')
>>> os.path.split('/Users/ethan/coding/python')
('/Users/ethan/coding', 'python')
  • os.path.isfile/os.path.isdir:判断当前路径是否是一个文件或文件夹
>>> os.path.isfile('/Users/ethan/coding/python/hello.py')
True
>>> os.path.isdir('/Users/ethan/coding/python/')
True
>>> os.path.isdir('/Users/ethan/coding/python')
True
>>> os.path.isdir('/Users/ethan/coding/python/hello.py')
False
  • os.walk:遍历目录

    os.walk 是遍历目录常用的模块,它返回一个包含 3 个元素的元祖:(dirpath, dirnames, filenames)。dirpath 是以 string 字符串形式返回该目录下所有的绝对路径;dirnames 是以列表 list 形式返回每一个绝对路径下的文件夹名字;filesnames 是以列表 list 形式返回该路径下所有文件名字。

>>> for root, dirs, files in os.walk('/Users/ethan/coding'):
...   print root
...   print dirs
...   print files
...
/Users/ethan/coding
['python']
[]
/Users/ethan/coding/python
['web2']
['hello.py']
/Users/ethan/coding/python/web2
[]
[]

参考资料

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
讲解Python中for循环下的索引变量的作用域
Apr 15 Python
Python 类与元类的深度挖掘 I【经验】
May 06 Python
Python制作钉钉加密/解密工具
Dec 07 Python
Python实现的rsa加密算法详解
Jan 24 Python
Python paramiko模块的使用示例
Apr 11 Python
Python设计模式之迭代器模式原理与用法实例分析
Jan 10 Python
Python如何获得百度统计API的数据并发送邮件示例代码
Jan 27 Python
python+os根据文件名自动生成文本
Mar 21 Python
Tensorflow实现神经网络拟合线性回归
Jul 19 Python
python字典的常用方法总结
Jul 31 Python
Python获取指定网段正在使用的IP
Dec 14 Python
python实现xml转json文件的示例代码
Dec 30 Python
Python中sys模块功能与用法实例详解
Feb 26 #Python
Python线程threading模块用法详解
Feb 26 #Python
Python图像处理库PIL中图像格式转换的实现
Feb 26 #Python
Python基础之字典常见操作经典实例详解
Feb 26 #Python
python3使用Pillow、tesseract-ocr与pytesseract模块的图片识别的方法
Feb 26 #Python
python解释器pycharm安装及环境变量配置教程图文详解
Feb 26 #Python
Python如何使用turtle库绘制图形
Feb 26 #Python
You might like
ninety plus是什么?ninety plus咖啡好吗?
2021/03/04 新手入门
PHP错误Cannot use object of type stdClass as array in错误的解决办法
2014/06/12 PHP
php实现压缩多个CSS与JS文件的方法
2014/11/11 PHP
PHP实现的字符串匹配算法示例【sunday算法】
2017/12/19 PHP
PHP字符串中抽取子串操作实例分析
2019/06/22 PHP
js左侧三级菜单导航实例代码
2013/09/13 Javascript
jCallout 轻松实现气泡提示功能
2013/09/22 Javascript
解析JavaScript中的不可见数据类型
2013/12/02 Javascript
javascript计算对象长度的方法
2017/10/25 Javascript
浅谈Vue-cli 命令行工具分析
2017/11/22 Javascript
JavaScript实现的简单加密解密操作示例
2018/06/01 Javascript
小程序二次贝塞尔曲线实现购物车商品曲线飞入效果
2019/01/07 Javascript
Vue+elementui 实现复杂表头和动态增加列的二维表格功能
2019/09/23 Javascript
iSlider手机端图片滑动切换插件使用详解
2019/12/24 Javascript
video.js添加自定义组件的方法
2020/12/09 Javascript
python sys模块sys.path使用方法示例
2013/12/04 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
Python找出list中最常出现元素的方法
2016/06/14 Python
python中将字典形式的数据循环插入Excel
2018/01/16 Python
python之pandas用法大全
2018/03/13 Python
Python 实现输入任意多个数,并计算其平均值的例子
2019/07/16 Python
Python如何使用Gitlab API实现批量的合并分支
2019/11/27 Python
如何使用python的ctypes调用医保中心的dll动态库下载医保中心的账单
2020/05/24 Python
python实点云分割k-means(sklearn)详解
2020/05/28 Python
详解python日志输出使用配置文件格式
2021/02/10 Python
医疗保健专业人士购物网站:Scrubs & Beyond
2017/02/08 全球购物
巴西食品补充剂在线零售商:Músculos na Web
2017/08/07 全球购物
澳大利亚办公室装修:JasonL Office Furniture
2019/06/25 全球购物
Currentbody法国:健康与美容高科技产品
2020/08/16 全球购物
外科实习自我鉴定
2013/10/06 职场文书
班级安全教育实施方案
2014/02/23 职场文书
房屋买卖协议书
2014/04/10 职场文书
机械电子工程专业自荐书
2014/06/10 职场文书
党员学习正风肃纪思想汇报
2014/09/12 职场文书
Vue的列表之渲染,排序,过滤详解
2022/02/24 Vue.js
2022微信温控新功能上线
2022/05/09 数码科技