os.path和pathlib的使用

文章目录

os.path

os的写法是嵌套式调用,当处理多个层级的目录路径时,通过 os.path 需要嵌套写法。

import os

# 获取当前文件位置
current_path = os.path.realpath(__file__)

print(current_path)
print(type(current_path))

# 获取根目录位置  os.path.split()  ---返回列表
project_path = os.path.split(os.path.realpath(__file__))[0]

print(project_path)
print(type(project_path))

# 拼接路径
file_path = os.path.join(project_path, 'demo.py')

print(file_path)

>
/Users/whtest/Code/ApiDmall/demo.py
<class 'str'>
/Users/whtest/Code/ApiDmall
<class 'str'>
/Users/whtest/Code/ApiDmall/demo.py

pathlib

pathlib的写法是链式写法,简洁明了.

from pathlib import Path


# 获取当前文件路径
current_path = Path(__file__)
print(current_path)
print(type(current_path))

# 获取当前文件夹路径,Path.cwd()获取相对路径
current_dict_path = Path.cwd()
print(current_dict_path)

# 获取上上层路径
path_a = Path.cwd().parent.parent
print(path_a)

# 拼接路径
file_path1 = Path.cwd().joinpath('demo.py')
print(file_path1)
file_path2 = Path.cwd().parent.joinpath('demo.py')
print(file_path2)
>
/Users/whtest/Code/ApiDmall/demo_encode.py
<class 'pathlib.PosixPath'>
/Users/whtest/Code/ApiDmall
/Users/whtest
/Users/whtest/Code/ApiDmall/demo.py
/Users/whtest/Code/demo.py

参考文档:https://www.cnblogs.com/poloyy/p/12435628.html

猜你喜欢

转载自blog.csdn.net/qq_25672165/article/details/107858094