【发布时间】:2014-03-03 19:39:32
【问题描述】:
我正在尝试使用len() 计算列表中单词的频率,但它不起作用,我创建了一个汽车列表,然后使用随机我基本上打印汽车 20 次,所以随机正在创建20 辆随机汽车,但现在我试图计算每辆汽车被创建了多少次,但它不起作用,它只显示 5、20 次?
carslist =["aston martin", "nissan", "nobel", "Porsche", "merc"]
randomGen = map(lambda x : random.randint(0,5), range(20))
cars= map(lambda i: carslist[i], randomGen)
print cars
#not working, trying to count how many times each car is being printed
lengths = map (lambda x: len(carsList), cars)
print lengths
【问题讨论】:
-
Python 2:
map(lambda x: y, z)→[y for x in z] -
我正在尝试使用 len 或 reduce 来实现
-
好吧,不要。使用
collections.Counter。 -
merc和ford在您的定义中是同一辆车吗?两个名字都有 4 个字符... -
另外,
random.randint(a,b)给出了从 a 到 b 的值。我认为您不想在 randomGen 中包含 5 作为可能的索引