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 功能和特点(新手必学)
Dec 30 Python
使用python绘制常用的图表
Aug 27 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
May 16 Python
Python设计实现的计算器功能完整实例
Aug 18 Python
Selenium鼠标与键盘事件常用操作方法示例
Aug 13 Python
Python 多维List创建的问题小结
Jan 18 Python
对IPython交互模式下的退出方法详解
Feb 16 Python
Python面向对象之类的封装操作示例
Jun 08 Python
Django在pycharm下修改默认启动端口的方法
Jul 26 Python
python安装第三方库如xlrd的方法
Oct 31 Python
python批量检查两个对应的txt文件的行数是否一致的实例代码
Oct 31 Python
Python txt文件如何转换成字典
Nov 03 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
Codeigniter上传图片出现“You did not select a file to upload”错误解决办法
2014/06/12 PHP
PHP生成图片验证码、点击切换实例
2014/06/25 PHP
Zend Framework教程之Zend_Layout布局助手详解
2016/03/04 PHP
PHP 数组基本操作小结(推荐)
2016/06/13 PHP
phpmailer简单发送邮件的方法(附phpmailer源码下载)
2016/06/13 PHP
js中关于一个分号的崩溃示例
2013/11/11 Javascript
js利用prototype调用Array的slice方法示例
2014/06/09 Javascript
原生的html元素选择器类似jquery选择器
2014/10/15 Javascript
js实现倒计时及时间对象
2016/11/15 Javascript
bootstrap模态框实现拖拽效果
2016/12/14 Javascript
vue项目中axios使用详解
2018/02/07 Javascript
vue实现简单loading进度条
2018/06/06 Javascript
vue中的过滤器及其时间格式化问题
2020/04/09 Javascript
js实现批量删除功能
2020/08/27 Javascript
[03:37]2015国际邀请赛第四日现场精彩集锦
2015/08/08 DOTA
python迭代器的使用方法实例
2013/11/21 Python
Python with用法实例
2015/04/14 Python
python传递参数方式小结
2015/04/17 Python
python实现12306抢票及自动邮件发送提醒付款功能
2018/03/08 Python
django中的HTML控件及参数传递方法
2018/03/20 Python
Python eval的常见错误封装及利用原理详解
2019/03/26 Python
浅谈python新式类和旧式类区别
2019/04/26 Python
python 中pyqt5 树节点点击实现多窗口切换问题
2019/07/04 Python
Python3内置模块random随机方法小结
2019/07/13 Python
postman和python mock测试过程图解
2020/02/22 Python
python 穷举指定长度的密码例子
2020/04/02 Python
使用Python文件读写,自定义分隔符(custom delimiter)
2020/07/05 Python
Feelunique德国官方网站:欧洲最大的在线美容零售商
2019/07/20 全球购物
博朗(Braun)俄罗斯官方商店:德国小家电品牌
2019/09/24 全球购物
应届生文秘专业个人自荐信格式
2013/09/21 职场文书
主管职责范文
2013/11/09 职场文书
行政副总岗位职责
2014/02/23 职场文书
伊索寓言教学反思
2014/05/01 职场文书
骨干教师考核方案
2014/05/09 职场文书
2016年春季运动会广播稿
2015/08/19 职场文书
Nginx虚拟主机的配置步骤过程全解
2022/03/31 Servers