标题说全部! 我想在我创建的菜单中创建一个“显示统计信息”选项。输入句子后会显示以下内容。例如: 字符串分析: 6个字 26个字符 9个元音 17辅音。 我已经制作了整个单词和字符计数器,现在我需要做元音和辅音,有人可以帮我吗?我非常感谢支持!
到目前为止我得到了什么:
def displayst():
print()
print("You said the following:")
time.sleep(1)
length = str(input("Please enter your sentence: "))
word = dis(length)
lengths = diss(length)
vowel = disv(length)
print(length)
time.sleep(1)
print()
print("String Analysis:",'\n', word, "Words",'\n', lengths, "Characters",'\n',vowel,"Vowels",'\n')
again()
元音= disv(长度)是我需要完成的,如果你可以帮助辅音,这将是伟大的!如果不是我主要需要作为辅音完成的元音,我想我可以尝试一下哈哈。
然后在我的disv(长度)中:
vowels = 'aeiou'
count = {}.fromkeys(vowels,0)
for char in length:
if char in count:
count[char] += 1
print(count)
这一切都很疯狂,我老老实实地提供了一个线索,我正在与这个哈哈。 请帮助欢呼。
答案 0 :(得分:2)
如果您想要计数,请使用Counter dict:
from collections import Counter
inp = input("Please enter your sentence: ").lower()
cn = Counter(inp)
vowels = {v: cn[v] for v in "aeiou" if v in cn}
cons = {c: cn[c] for c in "bcdfghjklmnpqrstvwxyz" if c in cn}
如果您希望总计数只是将值相加:
print(sum(vowels.values()))
print(sum(cons.values()))
如果您只想要总和:
vowels = sum(cn[v] for v in "aeiou")
cons = sum(cn[c] for c in "bcdfghjklmnpqrstvwxy")
答案 1 :(得分:0)
你没有从disv返回任何东西,这就是为什么它说元音无。你可以使用counter
来获得元音数
from collections import Counter
x = Counter(length)
vowel_count = 0
for v in "aeiou":
vowel_count += x[v]
return vowel_count
这将返回句子中元音的确切数量。
答案 2 :(得分:0)
def getInput():
sentenceInput=input('Enter your sentence: ')
return sentenceInput
def count(sentenceInput):
vowelList=['a','e','i','o','u']
vowelCount = 0
constCount = 0
spaceCount = 0
for char in sentenceInput:
if char in vowelList:
vowelCount += 1
elif char == ' ':
spaceCount += 1
else:
constCount +=1
print ('Length: ' + str(len(sentenceInput)) + ', Words: ' + str(spaceCount) + ', Vowels: ' + str(vowelCount) + ', Consonants: ' + str(constCount))
count(getInput())
答案 3 :(得分:0)
vcount = sum([s.count(v) for v in 'aeiou'])
[]中的列表理解返回每个元音的出现列表。外部总和总计计数以给出总元音数。