获取不带文件名的文件路径

时间:2019-04-15 23:28:30

标签: python

给出文件路径

/path/to/some/file.jpg

我将如何获得

/path/to/some

我正在做

fullpath = '/path/to/some/file.jpg'
filepath = '/'.join(fullpath.split('/')[:-1])

但是我认为这很容易出错

4 个答案:

答案 0 :(得分:6)

使用os.path.split

dirname, fname = os.path.split(fullpath)

根据文档:

  

将路径名 path 分成一对(head, tail),其中 tail 是   最后一个路径名组件和 head 都是导致该问题的所有方法。的    tail 部分永远不会包含斜线;如果 path 以斜杠结尾,则 tail   将为空。如果 path 中没有斜线,则 head 将为空。

os.path始终是适用于运行代码的平台的模块。

答案 1 :(得分:3)

请尝试这个

fullpath = '/path/to/some/file.jpg'

import os
os.path.dirname(fullpath)

答案 2 :(得分:0)

使用String rfind方法。

file = open('/model/output/lemmatized_json.json') 

答案 3 :(得分:0)

使用 pathlib,您可以使用 .parent 属性获取不带文件名的路径:

from pathlib import Path

fullpath = Path("/path/to/some/file.jpg")
filepath = str(fullpath.parent)  # /path/to/some/

这可以正确处理 UNIX 和 Windows 路径。