![](/img/trans.png)
[英]How to fix “IndexError: list assignment index out of range” error in Python?
[英]How to fix “IndexError: list index out of range” in python
我的问题是,当我设置一个for循环来浏览列表时,它不起作用,因为它超出了范围,即使我从0开始也是如此。
我曾尝试更改for循环的范围,但无法正常工作。
Code = input("Enter your Key code: ")
Code = list(Code)
message = input("Enter your message: ")
message = list(message)
for i in (0, len(message)):
if message[i] == Code[0]:
message[i] = 'a'
我以为它可以工作,但是在for循环的开始它就崩溃了。
for i in (0, len(message)):
应该是
for i in range(len(message)):
你忘了range
您想做:
for i in range(len(message)):
...
(0, len(message))
是一个元组。 对此进行迭代将为您提供0
,然后为len(message)
(始终比列表中最大的有效索引大1),从而导致IndexError。
您可能还需要检查Code
是否包含至少1个字符,否则Code[0]
也将为您提供IndexError。
Code = list(Code) or '?'
将Code
设置为'?'
如果Code == ''
。
你打错字了
应该是这样的:
对于我在范围内(len(消息))
您的for循环是弯曲的,因此它将总是从您想要的1+开始
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.