我正在尝试计算给定x列表中的' a但这段代码错了,我无法弄清楚为什么
x = ['a', 'b', 'a']
def a_count(x):
n = 0
for ltr in x:
if ltr == 'a':
n = n + 1
else :
n = n
return n
return
如果有人可以告诉我如何计算用户设置值的其他列表中的“a”,我将不胜感激。这可以通过设置像
这样的空列表来完成y = []
和...然后?
答案 0 :(得分:3)
你太早回来了,通过改变最后几行功能正常
x = ['a', 'b', 'a']
def a_count(x):
n = 0
for ltr in x:
if ltr == 'a':
n = n + 1
return n
>>> a_count(x)
2
你可以更简洁地这样做:
>>> sum(elem == 'a' for elem in x)
2
上面的代码只是添加0
和1s
(到达元素的elem == 'a'
的重新结果)来获取'a'
的总数
答案 1 :(得分:3)
>>> x = ['a', 'b', 'a']
>>> x.count('a')
2
答案 2 :(得分:0)
x = ['a', 'b', 'a']
def a_count(x):
n = 0
for ltr in x:
if ltr == 'a':
n = n + 1
return n
答案 3 :(得分:0)
这是一种可能派上用场的方法:
from collections import Counter
x = ['a', 'b', 'a']
Counter(x)['a']
这将使用内置的Collection计数器来计算所有唯一值。然后访问a