Python returns IndexError: string index out of range on this funtion why
本问题已经有最佳答案,请猛点这里访问。
我不明白为什么这个代码不起作用:
1 2 3 4 5 6 7 | def reverse(string): rev_string = [] for c in range(len(string)): rev_string[c]=string[(len(string))-c] str(rev_string) return rev_string print(reverse("google")) |
并引发此错误消息:
IndexError: string index out of range
当len=6和c=0时。因为没有索引6,所以会得到indexerror
代码中有三个问题。
rev_字符串是一个空列表,不能对其进行索引,可以使用
您需要使用
列表索引基于0,因此最大索引为
1 2 3 4 5 6 7 8 9 10 | def reverse(string): rev_string = [] for c in range(len(string)): rev_string.append(string[len(string)-c-1]) ? return ''.join(rev_string) print(reverse("google")) # elgoog |