3 回答
TA贡献1797条经验 获得超6个赞
尝试使用len(string)
而不是 25 ,因为在这里您将遍历所有 25 个整数。但是在您的情况下,您的字符串中应该有 25 个字符并不是强制性的,它可以是 25 个或小于 25 个。因此,当它小于 25 个字符并且您尝试使用第 25 个字符时,它将显示错误:
代替 :
while i < 25 :
尝试:
while i < len(string)
TA贡献1780条经验 获得超5个赞
你也可以试试这个:
string = input('Enter string upto 25 words: ')
if len(string) > 25:
print('Please enter a string less than 25 words.')
else:
total_lwr = sum(map(str.islower, string))
total_upr = sum(map(str.isupper, string))
你不需要为此使用 while,也不需要替换任何东西。更少的代码。:)
TA贡献1862条经验 获得超7个赞
的同时,应该如下图所示:
while i < len(string):
编码 :
string = input('Enter string upto 25 words: ')
if len(string) > 25:
print('Please enter a string less than 25 words.')
else:
string.replace(" ", "")
total_upr = 0
total_lwr = 0
i = 0
while i < len(string):
print(i)
if string[i].islower():
total_lwr += 1
elif string[i].isupper():
total_upr += 1
i += 1
print(f"'{string}' contains {total_lwr} lower-case letters and {total_upr} upper-case letters.")
添加回答
举报