在截取字符串时,遇到 print(s[-2:-5]) 返回空的问题。这是因为我们对步长存在误解。
在python中,截取字符串时,使用如下语法:
str[start:end:step]
其中:
立即学习“Python免费学习笔记(深入)”;
在问题中,你的目标是从倒数第二个字符到倒数第四个字符,即 ‘fde’。然而,你设置的步长为 1,这会导致跳过中间字符。
正确的做法是将步长设置为 -1,表示向后迭代。这样,就能得到预期的结果:
s = 'abcdefg' print(s[-2:-5:-1]) # 输出 'fde'
因此,当需要从后往前截取字符串时,必须使用负步长,例如 -1 或 -2。