如何分割字符串中的最后一个元素

2024-09-30 05:29:51 发布

您现在位置:Python中文网/ 问答频道 /正文

如果最后一个元素与前一个元素相同,那么我正试图将它从build\u位置分离出来,但是预期的输出不一样,您能帮助解决它吗?在

build_location = "\\data\builds797\PROD\client.1.8-01180-STD.PROD-1\client.1.8-01180-STD.PROD-1"

buildid =build_location.split("\\")


if buildid[-1] == buildid[-2]:
    #split the last element after "\"
    build_location = build_location.split("\\")[-1]
print build_location

OUTPUT:-
client.1.8-01180-STD.PROD-1

EXPECTED OUTPUT:-

\\data\builds797\PROD\client.1.8-01180-STD.PROD-1

Tags: thebuild元素outputdataiflocationprod
2条回答

这是因为您只索引最后一个元素。您应该使用一个切片来排除最后一个项目,而不是最后一个项目的索引:

if buildid[-1] == buildid[-2]:
    #split the last element after "\"
    build_location = build_location.split("\\")[:-1]
    #                                          ^^^^^

或者更好的方法是,对已经拆分的buildid执行切片以避免重新划分

^{pr2}$

然后,要从切片重建原始字符串,请使用join

build_location = "\\".join(build_location)

更改:

build_location = build_location.split("\\")[-1]

收件人:

^{pr2}$

你要拿走除最后一个元素以外的所有元素,而不仅仅是最后一个元素。在

这叫做切片,你可以了解它。在

之后,您应该将列表合并回一个字符串,并添加额外的\,其中:

'\\'+'\\'.join(build_location)

相关问题 更多 >

    热门问题