Python 字符串索引超出范围(长度错误不同)

Python 字符串索引超出范围(长度错误不同),python,loops,if-statement,matching,Python,Loops,If Statement,Matching,问题是列表l1中的字符串数比您的\u name\u no中的str数长,因此当我尝试将索引与字符匹配时,它会由于长度差异而匹配错误,我尝试使用if函数排除该错误,但没有成功 您应该像这样设置if条件: 如果r

问题是列表l1中的字符串数比您的\u name\u no中的str数长,因此当我尝试将索引与字符匹配时,它会由于长度差异而匹配错误,我尝试使用if函数排除该错误,但没有成功


您应该像这样设置if条件:

如果r

因为最后一个索引比列表的长度低1,因为列表以索引0开头。

出现此错误是因为列表或字符串的
len
从1开始计数,而不是从0开始计数,与索引的工作方式相反。例如:

a = 'hello'
print(len(a))
Output:
5
但是,如果要迭代5个值的索引,则会出现索引错误,因为
a[5]
不存在,该字符串中没有第五个元素(因为它从0开始,一直到4)


您可以通过更改
以纯文本而不是图像的形式发布您的代码来解决此问题。更改
非常感谢,我仍处于学习python的初级阶段,但这对Hanks非常有帮助,我刚刚意识到这一点
for r in range(0,len(l1)):
  if r < len(your_name):
     print(r, your_name[r]
for r in range(0,len(l1)):
   if r <= (len(your_name)-1):
     print(r, your_name[r]