1.os.getcwd() 获取当前文件所在的路径。
2.os.chdir(path) 更改当前路径,更改后,默认路径为更改后的路径。
3.os.path.basename(p) 获取路径中的最后一个文件夹名字。
4. os.path.join(path, *paths) 拼接路径。
5.os.path.exists(path) 判断路径 path是否存在。
6.os.path.isdir(path, /) 、 os.path.isfile(path)
前者判断path是否为文件夹,后者判断path是否为文件。
7.os.listdir(path=None)
输出path路径下所有文件及文件夹,返回结果为一个列表。(不遍历下层)
os.walk(top, topdown=True, οnerrοr=None, followlinks=False)
循环遍历top路径下的所有文件,该路径下层的文件及文件夹。
top:路径,顶层路径
topdown:可以理解为加快速度,不用管,默认为True
onerror:当有错误时,可以用定义的函数去输出错误
followlinks:默认为False,意义不大
该函数必须传入路径,返回3个变量值。第一个为文件夹绝对路径,第二个为子文件夹的列表,第三个为根目录下所有文件的列表
8.os.scandir(path = None)
加快迭代速度,把需要迭代的内容放在一个迭代对象里,而不是像os.listdir()一样把结果存在列表中(放在列表占用大量内存)
可见返回的是一个可迭代对象,作用是减少内存占用,加快运行速度。除此之外,它还可以访问文件的各种属性。如获取文件/文件夹名,文件/文件夹绝对路径,是否为文件夹,是否为文件,以及属性。
根据属性,还可以提取文件的大小(单位为kb,文件夹大小为0kb)、最近访问时间、最近修改时间、window系统下的创建时间、linux系统下的创建时间等
9.os.stat(path, *, dirfd=None, followsymlinks=True)
获得文件的属性。能获得的属性与上面一样,不再重复。
10.os.mkdir(path, mode=511, *, dir_fd=None)
创建路径(文件夹),若该路径已存在,则报错。(只能创建一层)
11.os.makedirs(name, mode=511, exist_ok=False)
创建路径(文件夹),能一次创建多层。
12.os.rename(src, dst, *, srcdirfd=None, dstdirfd=None)
重命名/移动文件或文件夹。
src:原文件路径
dst:重命名/移动后的文件路径
13.os.remove(path, *, dir_fd=None)
删除文件。小心该操作,不进回收站,删除后很难找回
14.获取桌面路径
os.path.expanduser("~") 获取电脑用户名及路径