python 字典返回值_python – 从列表与字典返回值

正如你在

TimeComplexity的python wiki中看到的那样,列表和dict在获得O(1)项时的平均情况下都具有相同的复杂性.因此,对于简单的基于索引的查找,应该没有那么大的差别.

编辑:我刚刚写了一个基准测试代码,获取第一个元素,一个来自中心和最后一个.你看到一个列表有一个很小的进展(虽然考虑到代码运行1000000次时,0.01s的偏差并不大).

总之,如果我处于你的情况,我会使用一个列表,因为它也更适合基于索引的请求的问题.

>>> from timeit import Timer

>>> t=Timer("(l[0], l[3], l[7])","l=[50, 30, 30, 30, 20, 30, 50, 40]")

>>> sorted(t.repeat(5))

[0.17861513267149576, 0.17863279532627985, 0.17883092423682, 0.17892576501373014, 0.18901037296996037]

>>> t=Timer("(l[0], l[3], l[7])","l={0: 50, 1: 30, 2: 30, 3: 30, 4: 20, 5: 30, 6: 50, 7: 40}")

>>> sorted(t.repeat(5))

[0.18541179903735383, 0.1855488765975224, 0.1855757545505412, 0.18578041096390052, 0.21753940019925722]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值