文件目录结构说明
?
一、路径获取
1.1 获取当前文件的绝对路径
使用**os.path.abspath()**获取当前文件的绝对路径。
import os
file_path = os.path.abspath(__file__)
print(file_path)
输出:
e:\Python\Path\python_path_test.py
?
1.2.1 获取当前文件的所在目录
使用**os.path.dirname()**获取当前文件的所在目录。
import os
directory_path = os.path.dirname(os.path.abspath(__file__))
print(directory_path)
输出:
e:\Python\Path
?
1.2.2 获取当前文件的所在目录的上一级目录
使用多个**os.path.dirname()**嵌套以获取当前文件的所在目录的上一级目录。
import os
parent_directory_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
print(parent_directory_path)
输出:
e:\Python
?
1.3 获取当前文件名
使用**os.path.basename()**获取当前文件的所在目录。
import os
file_name = os.path.basename(__file__)
print(file_name)
输出:
python_path_test.py
?
1.4 获取当前文件对于基准路径的相对路径
使用**os.path.relpath(file_path, base_path)**获取当前文件对于基准路径的相对路径。
import os
file_path = os.path.abspath(__file__)
base_path = "E:\Python"
relative_path = os.path.relpath(file_path, base_path)
print("Absolute Path: " + file_path)
print("Base Path: " + base_path)
print("Relative Path: " + relative_path)
输出:
Absolute Path: e:\Python\Path\python_path_test.py
Base Path: E:\Python
Relative Path: Path\python_path_test.py
?
二、路径判断
2.1 判断路径是否存在
使用**os.path.exists()**判断路径是否存在。
import os
path = "./data/data_file.txt"
is_exists = os.path.exists(path)
print(is_exists)
输出:
True
import os
path = "./data/data.txt"
is_exists = os.path.exists(path)
print(is_exists)
输出:
False
?
2.2 判断路径是否为绝对路径
使用**os.path.isabs()**判断路径是否为绝对路径。
import os
path = "E:\Python\Path\data\data_file.txt"
is_exists = os.path.isabs(path)
print(is_exists)
输出:
True
import os
path = "./data/data_file.txt"
is_exists = os.path.isabs(path)
print(is_exists)
输出:
False
?
2.3 判断路径是否为目录
使用**os.path.isdir()**判断路径是否为目录。
import os
path = "E:\Python\Path\data"
is_exists = os.path.isdir(path)
print(is_exists)
输出:
True
import os
path = "E:\Python\Path\data\data_file.txt"
is_exists = os.path.isdir(path)
print(is_exists)
输出:
False
?
2.4 判断路径是否为文件
使用**os.path.isfile()**判断路径是否为文件。
import os
path = "E:\Python\Path\data\data_file.txt"
is_exists = os.path.isfile(path)
print(is_exists)
输出:
True
import os
path = "E:\Python\Path\data"
is_exists = os.path.isfile(path)
print(is_exists)
输出:
False
?
三、路径处理
3.1 把多个目录/文件名合并(连接)为一个路径
使用**os.path.join(path1, path2, ···)**把多个目录/文件名合并(连接)为一个路径。
import os
path1 = "E:\Python"
path2 = "Path\data"
path3 = "data_file.txt"
path = os.path.join(path1, path2, path3)
print(path)
输出:
E:\Python\Path\data\data_file.txt
?
3.2 把路径分割为文件所在目录路径(dirname)和文件名(basename)
使用**os.path.split()**把路径分割为文件所在目录路径(dirname)和文件名(basename)。
import os
path = os.path.abspath(__file__)
result = os.path.split(path)
print(result)
输出:
('e:\\Python\\Path', 'python_path_test.py')
?
3.3 把路径分割为驱动器名(Windows操作系统)和文件路径
使用**os.path.splitdrive()**把路径分割为驱动器名(Windows)和文件路径。
import os
path = os.path.abspath(__file__)
result = os.path.splitdrive(path)
print(result)
输出:
('e:', '\\Python\\Path\\python_path_test.py')
?
3.4 把路径分割为文件路径和文件扩展名
使用**os.path.splitext()**把路径分割为文件路径和文件扩展名。
import os
path = os.path.abspath(__file__)
result = os.path.splitext(path)
print(result)
输出:
('e:\\Python\\Path\\python_path_test', '.py')
?
|