Python:计算路径中 parent 个文件夹的最有效方法

Python: Most efficient way to count the parent folders in a path

我正在尝试找到计算路径中 Parent 文件夹数量的最有效方法。比如这条路径:D:\Python\Projects\Old code\project_1,会有3个parent文件夹,即:\Python\Projects\Old代码。

我已经通过计算 \ 的数量(对于 windows)解决了这个问题,但是,我想知道是否有任何构建它的方法来完成这个,所以我可以在操作中获得相同的结果系统。

我目前的解决方案:

def count_parents(path):
    return path.count("\") - 1

(Windows) 示例: D:\Python\Projects\Old code\project_1 应导致:3

对于 Linux 我当然期望相同的结果,但不必检查字符串是否有 \ 或 / 来计算 parents

的数量

谁能高效地解决这个问题,我将不胜感激! (我尝试用谷歌搜索这个问题,但找不到解决方案)

这是一个变体:

def count_parents(path):
    return len(path.parts) - 2
    # or:
    # return len(path.parents) - 1

参见path.parts and Path.parents