[英]Is it possible to use the Counter function to see the ocurrences of elements in a list within a bigger list?
我被要求編寫代碼來計算單個輸入單詞中每個元音的出現次數。 不區分大小寫。
所以我基本上想計算一個列表中不同元素的出現。 我認為他們的方式是創建一個列表。 vowels=( "a","e","i","o","u" )
然后我輸入單詞,降低它,等等。
from collections import Counter
x = input()
y = x.lower()
z = list(y)
然后我想使用計數器,這樣它就可以一次計算所有的元音。
C = z.Counter(vowels)
print(C)
但是當我運行該軟件時,它會顯示給我
AttributeError: 'list' object 沒有屬性 'Counter'
那么我做錯了什么? 或者你能不能像使用計數一樣使用計數器?
(我已經使用 count 解決了練習,但我正在嘗試找到一個更優雅更簡潔的解決方案。)
這是我試圖使工作的整個代碼:
from collections import Counter
x = input()
y = x.lower()
z = list(y)
vowels=[ "a" ,"e" ,"i" ,"o" ,"u" ]
C = z.Counter(vowels)
print(C)
Counter
既不是屬性也不是列表方法。 試試這個:
vowels = ("a", "e", "i", "o", "u")
x = input("Enter a word:") # input: aeiai
y = x.lower()
vowels_counter = {k: v for k, v in Counter(y).items() if k in vowels}
print(vowels_counter) # output: {'a': 2, 'e': 1, 'i': 2}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.