Python字符串截取:为什么print(s[-2:-5])返回空?

ID:21690 / 打印

python字符串截取:为什么print(s[-2:-5])返回空?

python字符串截取时遇到困惑

在截取字符串时,遇到 print(s[-2:-5]) 返回空的问题。这是因为我们对步长存在误解。

在python中,截取字符串时,使用如下语法:

str[start:end:step]

其中:

立即学习“Python免费学习笔记(深入)”;

  • start:起始索引,包含在截取结果中(0 为字符串开头)
  • end:结束索引,不包含在截取结果中(len(str) 为字符串结尾)
  • step:步长,默认为 1

在问题中,你的目标是从倒数第二个字符到倒数第四个字符,即 'fde'。然而,你设置的步长为 1,这会导致跳过中间字符。

正确的做法是将步长设置为 -1,表示向后迭代。这样,就能得到预期的结果:

s = 'abcdefg' print(s[-2:-5:-1])  # 输出 'fde'

因此,当需要从后往前截取字符串时,必须使用负步长,例如 -1 或 -2。

上一篇: Python3.10如何用ffmpeg-python库将实时音频推流到RTMP?
下一篇: “DLL Load Failed due to Absence of Wheel for sqlcipheruot; 错误的解决方案

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。