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中为feedparser设置超时时间避免堵塞
Sep 28 Python
网站渗透常用Python小脚本查询同ip网站
May 08 Python
快速入门python学习笔记
Dec 06 Python
python tkinter界面居中显示的方法
Oct 11 Python
Kali Linux安装ipython2 和 ipython3的方法
Jul 11 Python
Python-接口开发入门解析
Aug 01 Python
复化梯形求积分实例——用Python进行数值计算
Nov 20 Python
关于sys.stdout和print的区别详解
Dec 05 Python
flask 框架操作MySQL数据库简单示例
Feb 02 Python
基于pytorch padding=SAME的解决方式
Feb 18 Python
python 实现朴素贝叶斯算法的示例
Sep 30 Python
Python 列表反转显示的四种方法
Nov 16 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
PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部
2009/10/22 PHP
IP攻击升级,程序改进以对付新的攻击
2010/11/23 PHP
调整优化您的LAMP应用程序的5种简单方法
2011/06/26 PHP
php使用反射插入对象示例分享
2014/03/11 PHP
yii数据库的查询方法
2015/12/28 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
php实现图片上传时添加文字和图片水印技巧
2020/04/18 PHP
php使用PDO执行SQL语句的方法分析
2017/02/16 PHP
Smarty缓存机制实例详解【三种缓存方式】
2019/07/20 PHP
js checkbox(复选框) 使用集锦
2009/04/28 Javascript
自己的js工具_Form 封装
2009/08/21 Javascript
js单向链表的具体实现实例
2013/06/21 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
详谈javascript中DOM的基本属性
2015/02/26 Javascript
jquery实现无限分级横向导航菜单的方法
2015/03/12 Javascript
JS克隆,属性,数组,对象,函数实例分析
2016/11/26 Javascript
Linux CentOS系统下安装node.js与express的方法
2017/04/01 Javascript
微信小程序 页面跳转如何实现传值
2017/04/05 Javascript
实现微信小程序的wxml文件和wxss文件在webstrom的支持
2017/06/12 Javascript
ES6新特性:使用export和import实现模块化详解
2017/07/31 Javascript
详解webpack中的hash、chunkhash、contenthash区别
2018/01/05 Javascript
js计算最大公约数和最小公倍数代码实例
2019/09/11 Javascript
解决VUE双向绑定失效的问题
2019/10/29 Javascript
Javascript幻灯片播放功能实现过程解析
2020/05/07 Javascript
Vue+scss白天和夜间模式切换功能的实现方法
2021/01/05 Vue.js
python实现排序算法
2014/02/14 Python
Python实现的归并排序算法示例
2017/11/21 Python
html5 Canvas画图教程(1)—画图的基本常识
2013/01/09 HTML / CSS
Myprotein法国官网:欧洲第一运动营养品牌
2019/03/26 全球购物
护理毕业生自荐信范文
2013/12/22 职场文书
教学实习自我评价
2014/01/28 职场文书
社区春季防火方案
2014/06/02 职场文书
社会实践活动报告
2015/02/05 职场文书
会议承办单位欢迎词
2015/09/30 职场文书
angular4实现带搜索的下拉框
2022/03/25 Javascript
Tomcat 与 maven 的安装与使用教程
2022/06/16 Servers