mytxt = "12345678"
print(mytxt)
temptxt = mytxt[::-1]
print(temptxt)
temptxt = temptxt[0:3]
print(temptxt)
mytxt = temptxt[::-1]
print(mytxt)
我想从字符串中获取最后3个字符,如何使这段代码更短?
答案 0 :(得分:3)
mytxt中的字符串在每个字符中具有以下索引
-----------------------------------------
mytxt = 1 2 3 4 5 6 7 8
-----------------------------------------
index(positive) = 0 1 2 3 4 5 6 7
index(negative) = -8 -7 -6 -5 -4 -3 -2 -1
通过负索引,我们可以访问字符串中的最后n个字符
并利用语法类似于的 slice 函数
[start:end:increment]
如此
print(mytxt[-3::])
将 initial 和 increment 留空表示我们使用的是默认值,
初始为0,增量为1,或者更好的是,只需省略第二个冒号
print(mytxt[-3:])
slice 函数的综合摘要可以找到here
答案 1 :(得分:2)
@hiro-protagonist指出,您可以使用Python的切片符号来检索字符串的最后三个字符,如下所示:
mytxt = "12345678"
print(mytxt[-3:]) # yields '678'