我有一个“事件”名称(键)和多重性(值)分发字典。我想将此字典转换为列表,以减少使用二进制搜索的运行时间。我不想添加另一个for循环,因为那样会增加我的运行时间。
我尝试遍历字典并追加,同时将键乘以值,但这仅给了我key * value,而不是键值的数量。
mydict = {'a':5,'b':7,'c':10,'d':2} myrichard = []
对于mydict.items()中的x,y:myrichard.append(x * y)
我想要输出['a','a','a','a','a','b','b','b','b','b',' b','b','c','c','c','c','c','c','c','c','c','c','d' ,'d'],但我得到了['aaaaa','bbbbbbb','cccccccccc','dd']的输出。
您需要该list.extend
方法。
>>> mydict = {'a':5, 'b':7, 'c':10, 'd':2}
>>> myrichard = []
>>> for x,y in mydict.items():
... myrichard.extend(x * y)
...
>>> myrichard
['a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'b', 'b', 'b', 'b', 'c', 'c', 'c', 'c', 'c', 'c', 'c', 'c', 'c', 'c', 'd', 'd']
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句