Python内置OS模块用法详解
ECharts5.0版本即将上线,来说说我与ECharts的那些事吧!>>>
为了配合Python办公自动化系列文章,本文带来的是Python内置OS模块的详细用法,其他内容将在近期更新完毕,本文目录如下
目录操作
创建目录
mkdir()
方法用于以数字权限模式当前目录下创建目录。默认的模式为 0777 (八进制),语法格式如下
os.mkdir(path[, mode])
-
path – 要创建的目录
-
mode – 要为目录设置的权限数字模式
makedirs()
方法用于递归创建目录。可以创建多个目录,其中exist_ok为False,表示目录存在抛出异常。语法格式如下
os.makedirs(path, mode=0o777)
-
path – 需要递归创建的目录。
-
mode – 权限模式。
示例代码
import os os.mkdir("..\\test_dir") # 创建目录上一级目录 # 判断是否创建成功 print(os.path.isdir("..\\test_dir")) # True os.makedirs("test_dirs\\test_dir") # 递归创建目录 print(os.path.isdir("test_dirs\\test_dir")) # True os.makedirs("Y:/02test/Python/02 进阶部分") print(os.path.isdir("Y:/02test/Python/02 进阶部分")) # True
删除目录
rmdir()
方法用于删除指定路径的目录。仅当这文件夹是空的才可以, 否则, 抛出OSError。语法格式如下
os.rmdir(path)
path – 要删除的目录路径
removedirs()
方法用于递归删除目录。注意如果目录不为空,会抛出OSError:[Errno 66] Directory not empty.语法格式为
os.removedirs(path)
示例代码
import os os.rmdir("..\\test_dir") # 删除目录 # 判断是否删除成功 print(os.path.isdir("..\\test_dir")) # False 目录不存在表示以删除 os.removedirs("test_dirs\\test_dir") # 递归删除目录 print(os.path.isdir("test_dirs\\test_dir")) # False os.removedirs("Y:/02test/Python/02 进阶部分") print(os.path.isdir("Y:/02test/Python/02 进阶部分")) # False
重命名目录
rename()
方法用于命名文件或目录,从 src 到 dst,如果dst是一个存在的目录, 将抛出OSError。
os.rename(src, dst)
src – 要修改的目录名
dst – 修改后的目录名
renames()
方法用于递归重命名目录或文件。类似rename()。
os.renames(old, new)
示例代码
import os os.rename("..\\test_dir", "..\\test_dir1") # 创建目录上一级目录 print(os.path.isdir("..\\test_dir")) # False print(os.path.isdir("..\\test_dir1")) # True os.renames("test_dirs\\test_dir", "test_dirs\\test_dir1") # 递归创建目录 print(os.path.isdir("test_dirs\\test_dir")) # False print(os.path.isdir("test_dirs\\test_dir1")) # True os.renames("Y:/02test/Python/02 进阶部分", "Y:/02test/Python/02进阶部分") print(os.path.isdir("Y:/02test/Python/02 进阶部分")) # False print(os.path.isdir("Y:/02test/Python/02进阶部分")) # True
获取目录
listdir()
方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。只支持在 Unix, Windows 下使用。path为需要列出的目录路径
os.listdir(path)
getcwd()
方法用于返回当前工作目录。
os.getcwd()
chdir()
方法用于改变当前工作目录到指定的路径。
os.chdir(path)
示例代码
import os dir_list = os.listdir() # 获取当前文件的路径,返回一个列表 print(dir_list) # 返回很长很长的列表 getcwd = os.getcwd() # 获取当前的工作路径 print(getcwd) # Y:\02test\Python\01 基础部分 os.chdir("..") # 返回上级目录 getcwd = os.getcwd() # 获取当前的工作路径 print(getcwd) # Y:\02test\Python
遍历目录
walk()
方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。在Unix,Windows中有效。
os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])
示例代码
import os list_result = os.walk(".", topdown=True, onerror=None, followlinks=False) # 获取当前目录 参数可写可不写 for root, dirs, files in list_result: print(root) print(dirs) print(files)
文件操作
os.open()
方法用于打开一个文件,并且设置需要的打开选项,模式参数mode参数是可选的,默认为 0777。
os.open(file, flags[, mode]);
os.write()
方法用于写入字符串到文件描述符 fd 中. 返回实际写入的字符串长度。
os.write(fd, str)
os.lseek()
方法用于设置文件描述符 fd 当前位置为 pos, how 方式修改。
os.lseek(fd, pos, how)
os.read()
方法用于从文件描述符 fd 中读取最多 n 个字节,返回包含读取字节的字符串,文件描述符 fd对应文件已达到结尾, 返回一个空字符串。在Unix,Windows中有效
os.read(fd,n)
os.fsync()
方法强制将文件描述符为fd的文件写入硬盘。Unix、Windows上可用。
os.fsync(fd)
os.close()
方法用于关闭指定的文件描述符 fd。
os.close(fd)
示例代码
""" -*- coding:uft-8 -*- time:2020/5/26 """ import os file = os.open("text.txt", os.O_CREAT | os.O_RDWR) # 打开文件 os.write(file, b"This is test") # 写入内容 os.fsync(file) # 将字符串刷新到硬盘上 os.lseek(file, 0, 0) # 将指针置为0 text = os.read(file, 100) # 读取文件 print(text) # b'This is test' os.close(file) # 关闭文件
我们的Python学习扣qun:855408893 ,从0基础的python脚本到web开发、爬虫、django、数据挖掘数据分析等,0基础到项目实战的资料都有整理。送给每一位python的小伙伴!每晚分享一些学习的方法和需要注意的小细节,学习路线规划,利用编程赚外快。点击加入我们的 python学习圈
- python os.path模块用法详解
- python笔记005——os.path模块用法详解
- Python中内置的日志模块logging用法详解
- Python中os模块功能与用法详解
- Python中内置的日志模块logging用法详解
- Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
- Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
- python time模块用法实例详解
- Node.js API详解之 os模块用法实例分析
- python之OS模块详解
- python os.path模块常用方法详解
- Python3.5——内置模块详解之time与datetime模块
- 详解python:time模块用法
- Python内置模块turtle绘图详解
- Python3-os模块详解
- python之OS模块详解
- python3 内置模块collections.deque(双向队列)的用法
- Python内置模块之time、random、hashlib、OS、sys、UUID模块
- Python re模块 (正则表达式用法剖析详解)
- Python3 中 configparser 模块解析配置的用法详解