os.path和pathlib.Path对比使用
import os
import shutil
from pathlib import Path
"""
os.path 和 Path对比
"""
wo_dirs_up = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
print(wo_dirs_up)
two_dirs_up = Path(__file__).resolve().parent.parent
print(Path(__file__))
"""
路径或文件拼接
"""
path = two_dirs_up / 'csv'
print(path)
print("文件名", path.name)
print("文件名无后缀", path.stem)
print("文件后缀", path.suffix)
print("path resolve:", path.resolve())
print("parent:", path.parent)
print("absolute", path.absolute())
print("parts", path.parts)
print("文件是否存在", path.exists())
path_one = two_dirs_up / 'csv-test' / 'csv.txt'
if not path_one.exists():
path_one.mkdir(parents=True)
else:
print("存在")
file_path = Path('/path/to/file.txt')
if file_path.exists():
file_path.unlink()
print(f"文件 {file_path} 已删除")
else:
print(f"文件 {file_path} 不存在")
dir_path1 = Path('/path/to/empty_dir')
if dir_path1.exists() and dir_path1.is_dir():
dir_path1.rmdir()
print(f"目录 {dir_path1} 已删除")
else:
print(f"目录 {dir_path1} 不存在或不是空目录")
dir_path2 = Path('/path/to/non_empty_dir')
if dir_path2.exists() and dir_path2.is_dir():
shutil.rmtree(dir_path2)
print(f"目录 {dir_path2} 及其子目录已删除")
else:
print(f"目录 {dir_path2} 不存在或不是目录")