删除用点分隔的路径的一部分

Mor*_*mir 5 python string

给定路径,例如

file_path = 'a.b.c.d.e'
Run Code Online (Sandbox Code Playgroud)

我希望删除e
这是我所做的:

class_path = ('.').join(file_path.split('.')[0:-1])
Run Code Online (Sandbox Code Playgroud)

还有其他更优雅的方式吗?

Rom*_*est 3

简单来说就是str.rfind功能:

file_path = 'a.b.c.d.e'
file_path = file_path[:file_path.rfind('.')+1]
print(file_path)   # a.b.c.d.
Run Code Online (Sandbox Code Playgroud)

如果.不需要尾随 - 删除+1移位:( file_path[:file_path.rfind('.')])。