我正在尝试计算每个字符出现的次数 句子。
message = 'It was a bright cold day in April, and the clocks were striking thirteen.'
c = 0
for i in message:
a=0
for a in range(len(message) + 1):
if i == message[a]:
c+=1
print(str(i)+ ' comes ' + str(c) + ' times.')
c=0
答案 0 :(得分:1)
for a in range(len(message) + 1):
如果您有一条包含五个字符的消息,则有效索引为[0]
至[4]
,但是此循环将继续进入[5]
,这超出了范围。
从您的范围中取出+ 1
。
答案 1 :(得分:0)
Python中的字符串的起始索引为0,因此当遍历字符串的长度加上一个range(len(message) + 1)
的索引时,当索引变为len(message)
。改为将其更改为range(len(message))
,代码将起作用。