python中的os库
os是一个标准库,专门用来操作系统接口,安装位置可以通过os.__file__属性得到。
windows操作系统的分隔符是: 反斜杠 \
Linux的分隔符是: 正斜杠 /
1. 文件和目录
os.getcwd()
返回表示当前工作目录的字符串
os.mkdir(path, mode=0o777, *, dir_fd=None) 以指定数字表示的权限模式mode创建一个名为path的目录
os.rmdir(path, *, dir_fd=None) 移除(删除)目录 path。如果目录不存在或不为空,则会分别抛出 FileNotFoundError
或 OSError
异常。
os.chdir(path) 将当前工作目录更改为 path
os.listdir(path='.') 返回一个包含指定path下所有文件和目录名称的按任意顺序排列的列表,特殊条目’.‘和’…'除外
2. os.path常见路径操作
os.path.abspath(path)
返回路径path 的绝对路径,相当于字符串拼接,路径path不存在也不会报错
os.path.basename(path)
返回路径 path 中文件的名称
os.path.dirname(path)
返回路径 path 中的目录名称
os.path.exists(path)
判断path是否指向一个已存在路径或已打开的文件描述符,存在返回True,不存在返回False
os.path.isabs(path)
判断path是否为一个绝对路径,是则返回True,不是或不存在则返回False。在 Unix 上,它就是以斜杠开头,而在 Windows 上,它可以是去掉驱动器号后以斜杠(或反斜杠)开头
os.path.isfile(path)
若path为指向一个已存在文件的符号链接或一个已存在文件路径,返回True。若path为一个文件夹路径或不存在路径,返回False。
os.path.isdir(path)
若path为指向一个已存在文件夹的符号链接或一个已存在文件夹路径,返回True。若path为一个文件路径或不存在路径,返回False。
os.path.join(path, *paths)
拼接两个或多个路径部分,按需要插入/
。如果参数中某个部分是绝对路径,则绝对路径前的路径都将被丢弃,并从绝对路径部分开始连接。如果最后一部分为空,则结果将以分隔符结尾。
os.sep.join(list) 接受一个列表,将列表中的字符串拼接成对应操作系统的格式。 跟os.path.join的差别是一个列表,一个是多个字符串参数
os.path.normcase(path)
规范路径名称的大小写。 在 Windows 上,将路径名称中的所有字符转为小写,并将正斜杠转为反斜杠。 在其他操作系统上,将路径不加修改地返回。
os.path.split(path)
将路径 path 拆分为一对,即 (head, tail),其中,tail 是路径的最后一部分,而 head 里是除最后部分外的所有内容。
os.path.splitext(path)
将路径 path 拆分为一对,即 (root, ext),使 root + ext == path,其中 ext 为空或以英文句点开头,且最多包含一个句点。
3. 其他命令
os.name
导入的依赖特定操作系统的模块的名称,返回’posix’表示Linux,'nt’表示Windows,'java’表示Java虚拟机
os.__file__
以字符串形式返回os模块安装的绝对路径
os.walk (33条消息) os.walk()的详细理解(秒懂)_不堪沉沦的博客-CSDN博客
1) for root, dirs, files in os. walk(path): 这里会依次遍历所有的目录,包括子目录、孙子目录
2) root-》 当前遍历的文件夹的绝对路径; dirs-》 当前遍历的所有子文件夹的目录名字; files-》 当前遍历的文件夹下的所有文件名
3) 只有当存在子目录文件夹时才会进行遍历,否则就停止了