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实现拼接多张图片的方法
Dec 01 Python
Python使用SocketServer模块编写基本服务器程序的教程
Jul 12 Python
Python 爬虫模拟登陆知乎
Sep 23 Python
Python工程师面试必备25条知识点
Jan 17 Python
Python入门必须知道的11个知识点
Mar 21 Python
基于python代码实现简易滤除数字的方法
Jul 17 Python
Django 中间键和上下文处理器的使用
Mar 17 Python
Python中面向对象你应该知道的一下知识
Jul 10 Python
python障碍式期权定价公式
Jul 19 Python
Django自带的加密算法及加密模块详解
Dec 03 Python
python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例
Feb 25 Python
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
Apr 04 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文件操作实现代码分享
2011/09/01 PHP
初识php MVC
2014/09/10 PHP
php实现修改新闻时删除图片的方法
2015/05/12 PHP
phpmyadmin下载、安装、配置教程
2017/05/16 PHP
php魔法函数与魔法常量使用介绍
2017/07/23 PHP
Laravel框架用户登陆身份验证实现方法详解
2017/09/14 PHP
php处理抢购类功能的高并发请求
2018/02/08 PHP
javascript中获取选中对象的类型
2007/04/02 Javascript
DIY jquery plugin - tabs标签切换实现代码
2010/12/11 Javascript
JS跨域代码片段
2012/08/30 Javascript
关于js new Date() 出现NaN 的分析
2012/10/23 Javascript
使用Chrome调试JavaScript的断点设置和调试技巧
2014/12/16 Javascript
javascript与jquery中的this关键字用法实例分析
2015/12/24 Javascript
jquery实现网站列表切换效果的2种方法
2016/08/12 Javascript
jQuery实现简单的网页换肤效果示例
2016/09/18 Javascript
微信小程序 wxapp视图容器 view详解
2016/10/31 Javascript
过期软件破解办法实例详解
2017/01/04 Javascript
快速解决select2在bootstrap模态框中下拉框隐藏的问题
2018/08/10 Javascript
JS实现倒计时图文效果
2018/11/17 Javascript
js实现多个倒计时并行 js拼团倒计时
2019/02/25 Javascript
详解如何给React-Router添加路由页面切换时的过渡动画
2019/04/25 Javascript
layui内置模块layim发送图片添加加载动画的方法
2019/09/23 Javascript
vue列表数据发生变化指令没有更新问题及解决方法
2020/01/16 Javascript
如何使用vue slot创建一个模态框的实例代码
2020/05/24 Javascript
vue深度监听(监听对象和数组的改变)与立即执行监听实例
2020/09/04 Javascript
解决VantUI popup 弹窗不弹出或无蒙层的问题
2020/11/03 Javascript
Python命令行click参数用法解析
2019/12/19 Python
Django生成数据库及添加用户报错解决方案
2020/10/09 Python
Merrell美国官网:美国登山运动鞋品牌
2018/02/07 全球购物
培训主管岗位职责
2014/02/01 职场文书
实验教师岗位职责
2014/02/13 职场文书
幼儿园感恩节活动方案2014
2014/10/11 职场文书
2014年扫黄打非工作总结
2014/12/03 职场文书
学校社团活动总结
2015/05/07 职场文书
写给消防战士们的一封慰问信
2019/10/07 职场文书
Redis 限流器
2022/05/15 Redis