python os模块常用的29种方法使用详解


Posted in Python onJune 02, 2020

os.getcwd()

获取当前工作目录,即当前python脚本工作的目录路径

print(os.getcwd())
>>E:\pycharm\test

os.chdir(“dirname”)

改变当前脚本工作目录;相当于shell下cd

os.chdir('E:\pycharm')
print(os.getcwd())
>>E:\pycharm

os.curdir

是一个值,返回当前目录: ('.')

print(os.curdir)
>>.

os.pardir

也是一个值,获取当前目录的父目录字符串名:('…')

print(os.pardir)
>>..

os.makedirs(‘dirname1/dirname2')

可生成多层递归目录

os.makedirs('path1/path2')
os.chdir('./path1/path2')
print(os.getcwd())
>>E:\pycharm\test\path1\path2

python os模块常用的29种方法使用详解

os.removedirs(‘dirname1')

若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推

os.chdir('./path1/path2')
print(os.getcwd())
os.removedirs('E:/pycharm/test/path1/path2')
print(os.getcwd())

python os模块常用的29种方法使用详解

如果删除的文件夹是工作路径,则不能删除。

os.removedirs('E:/pycharm/test/path1/path2')

python os模块常用的29种方法使用详解

os.mkdir(‘dirname')

生成单级目录

os.mkdir('./path1')

python os模块常用的29种方法使用详解

os.rmdir(‘dirname')

删除单级空目录,若目录不为空则无法删除。

os.rmdir('./path1')

python os模块常用的29种方法使用详解

os.listdir(‘dirname')

列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印。

print(os.listdir('./'))
>>['.idea', '0.py', '1.py', 'log.py', 'log.txt', 'log.txt.1', 'os_test.py', 'test.py', '__pycache__']

os.remove()

删除一个文件,不能删除文件夹。

print(os.listdir('./'))
os.remove('./log.txt')
print(os.listdir('./'))
>>['.idea', '0.py', '1.py', 'log.py', 'log.txt', 'log.txt.1', 'os_test.py', 'test.py', '__pycache__']
>>['.idea', '0.py', '1.py', 'log.py', 'log.txt.1', 'os_test.py', 'test.py', '__pycache__']

os.rename(“oldname”,“newname”)

重命名文件/目录

print(os.listdir('./'))
os.rename('./log.txt.1', 'log.other')
print(os.listdir('./'))
>>['.idea', '0.py', '1.py', 'log.py', 'log.txt.1', 'os_test.py', 'path', 'test.py', '__pycache__']
>>['.idea', '0.py', '1.py', 'log.other', 'log.py', 'os_test.py', 'path', 'test.py', '__pycache__']

os.stat(‘path/filename')

获取文件/目录信息

print(os.stat('./'))
print(os.stat('./log.py'))
>>os.stat_result(st_mode=16895, st_ino=281474976733851, st_dev=265296634, st_nlink=1, st_uid=0, st_gid=0, st_size=4096, st_atime=1591056501, st_mtime=1591056501, st_ctime=1585357336)
>>os.stat_result(st_mode=33206, st_ino=1970324837041014, st_dev=265296634, st_nlink=1, st_uid=0, st_gid=0, st_size=3102, st_atime=1590469701, st_mtime=1590469701, st_ctime=1590462783)

os.sep

输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"

print(os.sep)
>>\

os.linesep

输出当前平台使用的行终止符,win下为"\r\n",Linux下为"\n"

os.pathsep

输出用于分割文件路径的字符串 win下为;,Linux下为:

print(os.pathsep)
>>;

os.name

输出字符串指示当前使用平台。win->‘nt'; Linux->‘posix'

print(os.name)
>>nt

os.system(“bash command”)

运行shell命令,直接显示

os.environ

获取系统环境变量

os.path.abspath(path)

返回path规范化的绝对路径

print(os.path.abspath('./log.py'))
>>E:\pycharm\test\log.py

os.path.split(path)

将path分割成目录和文件名二元组返回

print(os.path.split('./log.py'))
>>('.', 'log.py')

os.path.dirname(path)

返回path的目录。其实就是os.path.split(path)的第一个元素

print(os.path.dirname('./log.py'))
>>.

os.path.basename(path)

返回path最后的文件名。如果path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素

print(os.path.basename('./log.py'))
print(os.path.basename('./'))
>>log.py
>>

os.path.exists(path)

如果path存在,返回True;如果path不存在,返回False

print(os.path.exists('./log.py'))
print(os.path.exists('./log'))
>>True
>>False

os.path.isabs(path)

如果path是绝对路径,返回True

print(os.path.isabs('./log.py'))
print(os.path.isabs('E:/pycharm/test/log'))
>>False
>>True

os.path.isfile(path)

如果path是一个存在的文件,返回True。否则返回False

print(os.path.isfile('./log'))
print(os.path.isfile('./log.py'))
>>False
>>True

os.path.isdir(path)

如果path是一个存在的目录,则返回True。否则返回False,文件也返回False。

print(os.path.isdir('./log.py'))
print(os.path.isdir('./path_other'))
>>False
>>True

os.path.join(path1, path2, …)

将多个路径组合后返回,第一个绝对路径之前的参数将被忽略

print(os.path.join('./', 'path1', 'path2', 'path3'))
print(os.path.join('./', 'path1', 'path2', os.getcwd(), 'path3'))
>>./path1\path2\path3
>>E:\pycharm\test\path3

os.path.getatime(path)

返回path所指向的文件或者目录的最后存取时间

print(os.path.getatime('./log.py'))
>>1590469701.9787416

os.path.getmtime(path)

返回path所指向的文件或者目录的最后修改时间

print(os.path.getmtime('./log.py'))
>>1590469701.6769156

到此这篇关于python os模块常用的29种方法使用详解的文章就介绍到这了,更多相关python os模块内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python通过PIL获取图片主要颜色并和颜色库进行对比的方法
Mar 19 Python
在Mac OS系统上安装Python的Pillow库的教程
Nov 20 Python
在阿里云服务器上配置CentOS+Nginx+Python+Flask环境
Jun 18 Python
利用python爬取软考试题之ip自动代理
Mar 28 Python
纯python实现机器学习之kNN算法示例
Mar 01 Python
Django如何配置mysql数据库
May 04 Python
让Django支持Sql Server作后端数据库的方法
May 29 Python
python模拟菜刀反弹shell绕过限制【推荐】
Jun 25 Python
python输出数组中指定元素的所有索引示例
Dec 06 Python
Python实现手机号自动判断男女性别(实例解析)
Dec 22 Python
python 抓取知乎指定回答下视频的方法
Jul 09 Python
关于pycharm 切换 python3.9 报错 ‘HTMLParser‘ object has no attribute ‘unescape‘ 的问题
Nov 24 Python
完美解决pycharm 不显示代码提示问题
Jun 02 #Python
PyQt5.6+pycharm配置以及pyinstaller生成exe(小白教程)
Jun 02 #Python
基于python实现查询ip地址来源
Jun 02 #Python
新版Pycharm中Matplotlib不会弹出独立的显示窗口的问题
Jun 02 #Python
Pycharm生成可执行文件.exe的实现方法
Jun 02 #Python
Python实现初始化不同的变量类型为空值
Jun 02 #Python
浅谈Python程序的错误:变量未定义
Jun 02 #Python
You might like
php的慢速日志引起的Mysql错误问题分析
2014/05/13 PHP
浅谈php中include文件变量作用域
2015/06/18 PHP
PHP验证码类ValidateCode解析
2017/01/07 PHP
PHP常用工具函数小结【移除XSS攻击、UTF8与GBK编码转换等】
2019/04/27 PHP
IE 缓存策略的BUG的解决方法
2007/07/21 Javascript
jquery事件机制扩展插件 jquery鼠标右键事件。
2011/12/26 Javascript
使用按钮控制以何种方式打开新窗口的属性介绍
2012/12/17 Javascript
javascript获取隐藏dom的宽高 具体实现
2013/07/14 Javascript
js显示动态时间的方法详解
2016/08/20 Javascript
vue+vuex+axios+echarts画一个动态更新的中国地图的方法
2017/12/19 Javascript
完美解决axios跨域请求出错的问题
2018/02/05 Javascript
手动用webpack搭建第一个ReactApp的示例
2018/04/11 Javascript
Vue表单绑定的实例代码(单选按钮,选择框(单选时,多选时,用 v-for 渲染的动态选项)
2019/05/13 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
javascript实现时钟动画
2020/12/03 Javascript
python正则分组的应用
2013/11/10 Python
使用python实现扫描端口示例
2014/03/29 Python
python+django快速实现文件上传
2016/10/24 Python
利用python求积分的实例
2019/07/03 Python
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
2020/02/17 Python
Python爬虫入门有哪些基础知识点
2020/06/02 Python
Opencv求取连通区域重心实例
2020/06/04 Python
Kenneth Cole官网:纽约时尚优雅品牌
2016/11/14 全球购物
介绍一下SQL Server的全文索引
2013/08/15 面试题
一些Solaris面试题
2013/03/22 面试题
如何拷贝一整个Java对象,包括它的状态
2013/12/27 面试题
J2EE是技术还是平台还是框架
2016/08/14 面试题
学校岗位设置方案
2014/01/16 职场文书
自考毕业自我鉴定
2014/03/18 职场文书
文明之星事迹材料
2014/05/09 职场文书
社区安全生产月活动总结
2014/07/05 职场文书
社区灵活就业证明
2014/11/03 职场文书
十佳少年事迹材料
2014/12/25 职场文书
2016年教师师德师风承诺书
2016/03/25 职场文书
导游词之井冈山
2019/11/20 职场文书
JS开发前端团队展示控制器来为成员引流
2022/08/14 Javascript