在 Python 中获取父目录
Muhammad Waiz Khan
2023年1月30日
2021年2月28日
-
在 Python 中使用
pathlib
模块的path.parent()
方法获取父目录 -
在 Python 中使用
os
模块的pardir()
方法获取父目录 -
在 Python 中使用
os
模块的dirname()
方法获取父目录
本教程将讲解在 Python 中获取一个路径的父目录的各种方法。父目录是指高于或高于给定目录或文件的目录。例如,路径 C:\folder\subfolder\myfile.txt
的父目录是 C:\folder\subfolder
。除了根目录外,每个目录都有一个父目录。
在 Python 中使用 pathlib
模块的 path.parent()
方法获取父目录
path.parent()
方法,顾名思义,就是以字符串的形式返回作为参数传递的路径的父目录。因此,要得到一个路径的父目录,我们需要将路径字符串传递给 pathlib
模块的 path.parent()
方法。
下面的示例代码演示了如何在 Python 中使用 path.parent()
来获取一个路径的父目录。
from pathlib import Path
path1 = Path(r"C:\folder\subfolder\myfile.txt")
path2 = Path(r"C:\Myfile.txt")
print(path1.parent)
print(path2.parent)
输出:
C:\folder\subfolder
C:\
在 Python 中使用 os
模块的 pardir()
方法获取父目录
os.pardir
是指父目录的常量字符串。对于 Windows 和 POSIX 操作系统,它是'..'
,对于 Mac 操作系统,它是'::'
。
当我们在 os.path.join()
方法中把给定的路径和 os.pardir
结合起来,我们就可以得到给定目录的父目录。
下面的示例代码演示了如何使用 os
模块的 os.pardir
和 path.join()
方法来获取路径的父目录。
import os.path
path1 = r"C:\folder\subfolder\myfile.txt"
path2 = r"C:\Myfile.txt"
print(os.path.abspath(os.path.join(path1, os.pardir)))
print(os.path.abspath(os.path.join(path2, os.pardir)))
输出:
C:\folder\subfolder
C:\
如上所述,如果操作系统是 Windows 或 POSIX,如果我们将 os.pardir
替换为'..'
,我们也可以得到同样的结果。
import os.path
path1 = r"C:\folder\subfolder\myfile.txt"
path2 = r"C:\Myfile.txt"
print(os.path.abspath(os.path.join(path1, '..')))
print(os.path.abspath(os.path.join(path2, '..')))
输出:
C:\folder\subfolder
C:\
在 Python 中使用 os
模块的 dirname()
方法获取父目录
os
模块的 dirname()
方法将路径字符串作为输入,并返回父目录作为输出。
下面的示例代码演示了如何使用 dirname()
方法获取路径的父目录。
import os.path
path1 = Path(r"C:\folder\subfolder\myfile.txt")
path2 = Path(r"C:\Myfile.txt")
print(os.path.dirname(path1))
print(os.path.dirname(path2))
输出:
C:\folder\subfolder
C:
相关文章 - Python Directory
- 在 Python 中列出目录和子目录中的所有文件
- 修复 Python 中的 No such File in Directory 错误
- 在 Python 中从路径中获取目录
- Python 计算目录中的文件数
- 在 Python 中对文件夹中的每个文件执行命令
- 用 Python 打开目录中的所有文件