Python 从较大的字符串(整个路径)中删除字符串(文件名)
假设我有这个字符串Python 从较大的字符串(整个路径)中删除字符串(文件名),python,python-2.7,Python,Python 2.7,假设我有这个字符串“D:\Users\Zache\Downloads\example.obj”,我想将另一个文件复制到与example.obj相同的目录中。如何以非硬编码的方式实现这一点 “示例”也可以是其他内容(用户输入)。我正在使用filedialog2获取大字符串 这适用于具有基本GUI的导出程序。您可以使用str.split解决此问题,但应使用os.path解决此问题。split提供给定文件名的目录部分: >>> import os.path >>>
“D:\Users\Zache\Downloads\example.obj”
,我想将另一个文件复制到与example.obj
相同的目录中。如何以非硬编码的方式实现这一点
“示例”
也可以是其他内容(用户输入)。我正在使用filedialog2
获取大字符串
这适用于具有基本GUI的导出程序。您可以使用str.split解决此问题,但应使用os.path解决此问题。split提供给定文件名的目录部分:
>>> import os.path
>>> os.path.dirname(r"D:\Users\Zache\Downloads\example.obj")
'D:\\Users\\Zache\\Downloads'
你应该看看。这可能是我一直在寻找的,所以我会把它标记为已接受。我确实想知道为什么在dirname的参数中的字符串前面有一个“r”。@ZachariasHortén:我创建了一个原始字符串以防止
\
反斜杠被解释为转义序列的一部分。我也可以将它们加倍到\\
,或者使用正斜杠,但我想更紧密地匹配您的示例。