我知道如何找到子字符串的很多方法:从开始索引到结束索引,字符之间等,但我有一个我不知道如何解决的问题:我有一个字符串,例如路径: folder1/folder2/folder3/new_folder/image.jpg
第二条路径: folder1/folder2/folder3/folder4/image2.png
从这个路径我只想采取最后的部分: image.jpg
和 image2.png
。如果我不知道子字符串何时开始(我不知道索引,但我可以假设它将在最后一个 /
字符之后),如果一个字符重复多次( /
)和扩展名不同( .jpg
和 .png
甚至其他)?
原文由 Ziva 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用
os.path.basename()
代替,不用担心细节。os.path.basename()
返回路径的文件名部分:对于更通用的字符串拆分问题,您可以使用
str.rpartition()
根据给定的字符序列 从末尾 开始拆分字符串:并使用
str.rsplit()
你可以多次拆分到一个限制,再次从最后开始:最后但同样重要的是,您可以使用
str.rfind()
来查找子字符串的索引,从末尾开始搜索: