我在 Python 方面非常糟糕,我的计算机编程课程在两天后结束(感谢上帝),但我很难弄清楚什么可能是有史以来最简单的代码。
我的作业状态的说明,“编写一个程序,它以文本形式读取,直到出现'!' 找到。使用由字母“A”到“Z”下标的整数数组。”
从我到目前为止所做的事情来看:
msg = input("What is your message? ")
msg = msg.upper()
int_array = [0] * 26
for alph in range (65, 91):
char = chr(alph)
print(char)
(int_array[char])
任何帮助将不胜感激!谢谢!
编辑:这是完整的任务:
编写一个程序,从键盘读取文本,直到找到 ('!')。
使用由字母“A”到“Z”下标的整数数组,计算每个字母出现的次数(无论是大写还是小写)。在单独的计数器中,还计算“其他”字符('.'、'?'、''、'2' 等)的总数。
打印出找到的每个字母的计数。此外,打印非字母字符的计数。
通过检查数组,打印出元音的数量和辅音的数量。
打印出找到最多的字母。(请注意,可能有多个字母附有最大计数。)打印出找到最少次数的字母(或字母),但一定要排除根本没有找到的字母。
更新:
我的代码已经做到了这一点
msg = input("What is your message? ")
print ()
num_alpha = 26
int_array = [0] * num_alpha
for alpha in range(num_alpha):
int_array[alpha] = chr(alpha + 65)
print(int_array[alpha], end = "")
print()
lett = 0
otherch = 0
num_vowels = 0
num_consanants = 0
count_character = [0] * 100000
length = len(msg)
for character in msg.upper():
if character == "!":
print("lett =", lett)
print("other char = ", otherch)
print("num_vowels = ", num_vowels)
print("num_consanants = ", num_consanants)
elif character < "A" or letter > "Z":
otherch = otherch + 1
count_character[ord(character)] = count_character[ord(character)] + 1
else:
lett = lett + 1
count_character[ord(character)] = count_character[ord(character)] + 1
for character in msg:
print("character", character, "appeared" , count_character[ord(character)] , "times")
显然还没有完成,但是每次我打印最后一个打印语句时,它都会说每个字符出现 0 次。有人可以帮忙吗?