OS ( Operating System 操作系统 ) 操作系统模块,它是属于python的标准库,也就是Python自带的库。 它常用于处理文件和目录(文件夹)的操作。
另外os模块中的 path 模块(即os.path.方法()
)也比较常用,主要用于获取文件的属性。本篇文章不做详细阐述,会单独在另一篇文章里阐述其用法。
先把OS模块中常用到的方法总结一下,方法后续使用时查询。
方法名 | 作用 |
---|---|
os.getcwd() | 返回当前工作目录 |
os.chdir(path) | 改变工作目录 |
os.listdir(path) | 列举指定目录中的文件名和目录名 |
os.mkdir(path) | 创建单层目录 |
os.makedirs(path) | 递归创建目录 |
os.remove(path) | 删除文件 |
os.rmdir(path) | 删除单层目录 |
os.removedirs() | 递归删除目录 |
os.system(command) | 运行系统的shell命令 |
os.rename(old,new) | 将老的文件名或目录重新命名为新的文件名或目录 |
os.curdir | 代表当前目录 |
os.pardir | 代表上一级目录 |
首先我们需要先将OS模块引用出来(import os
),才能正常进行下面的各个方法练习。后面的例子都是在同一个文件中进行举例。文件的绝对路径如下图所示。
若创建多层目录,父目录不存在的话会报错。若该目录已存在也会报错
原先目录B里面是空的,尝试创建递归目录。
在目录A里面手动创建一个文件
a.txt
,尝试删除这个文件。
若该目录非空,则抛出异常。
像rmdir()一样, 如果子文件夹成功删除, removedirs()才尝试它们的父文件夹,直到抛出一个error(它基本上被忽略,因为它一般意味着你文件夹不为空)。
下图中删除到目录B(包含目录B)就停止了,因为目录B及子目录下面都是空的,目录B的上级目录(mypython
目录)非空,所以删除到目录B则停止。若子目录C下面还有其他文件或目录,则删除到目录停止。
比如 system('cmd) 是打开windows的cmd窗口
将老的文件名重新命名或目录为新的文件名或目录。
其中..
代表上级目录,.
代表当前目录
代表当前目录, 相当于
.
代表上一级目录,相当于
..
以上就是对于python中 OS模块常用方法 的理解,如有补充和建议请评论区留言,共同进步,感谢!