【问题标题】:Index out of range when printing adjacent letter打印相邻字母时索引超出范围
【发布时间】:2022-11-14 15:46:46
【问题描述】:

我有如下所示的字符串

stg = 'AVBFGHJ'

我希望按如下预期打印相邻的字母

AV

VB

BF

FG

GH

HJ

J None

我尝试了下面的代码,但抛出了 Index out of Range 之类的错误

我的代码:

for i in range(len(stg)):
    print(stg[i],stg[i+1])

【问题讨论】:

  • 是的,当i 到达len(stg) 的末尾时,如果你调用i+1 会发生什么?
  • @GAVD:解决任何技巧
  • 迭代不更新最后一个字母怎么样?或者检查这封信是否是最后一封,然后不写最后一封信?或者是其他东西?

标签: python python-3.x list for-loop indexoutofrangeexception


【解决方案1】:

这是注定要发生的。您正在访问超出字符串范围的索引。

但是,如果您真的想这样做,则可以执行以下操作

stg = 'AVBFGHJ'
for i in range(len(stg)):
    if (i + 1) < len(stg):
        print(stg[i],stg[i+1])
    else:
        print(stg[i], None)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多