from pathlib import Pathpath = Path(__file__) print(path) # >>> D:\study\python\practice\16.pathlib方法.py# 获取当前文件的上级目录 print(Path.cwd()) # >>> D:\study\python\practice print(Path(__file__).parent) # >>> D:\study\python\practice# 获取所有上级目录 p = Path(__file__).parents # >>> <WindowsPath.parents> print(p) for i in p:print(i) # >>> D:\study\python\practice D:\study\python D:\study D:\# 通过元组的方式返回分割后的路径,便于获取需要的内容 print(Path(__file__).parts) # >>> ('D:\\', 'study', 'python', 'practice', '16.pathlib方法.py')# 获取根目录 print(Path(__file__).root) # >>> \# 判断是否是目录 print(Path(__file__).is_dir()) # >>> False print(Path('D:\study\python\practice').is_dir()) # >>> True# 判断是否是文件 print(Path(__file__).is_file()) # >>> True print(Path('D:\study\python\practice').is_file()) # >>> False# 判断路径是否存在 print(Path(__file__).exists()) # >>> True print(Path("__file__").exists()) # >>> False# 打开文件 Path(__file__).open()# 获取文件的绝对路径 print(Path(__file__).resolve()) # >>> D:\study\python\practice\16.pathlib方法.py# 遍历目录的子目录或者文件 p2 = Path('D:\study\python\practice').iterdir() print(p2) # >>> <generator object Path.iterdir at 0x0000022C999270D0> for i in p2:print(i)p3 = Path('D:\study\python\practice').iterdir() for i in p3:print(i)# 拼接路径 print(Path(__file__).joinpath('/test'))# 获取文件名称,仅名称,不包含后缀 print(Path(__file__).stem) # >>> 16.pathlib方法# 获取文件后缀 print(Path(__file__).suffix) # >>> .py