我最近比较了[]和list()的处理速度,并且惊讶地发现[]运行速度比list()快三倍以上。我跑了相同的测试与{}和dict(),结果几乎相同:[]和{}两个花了大约0.128sec /百万次,而list()和dict()大约花费每个0.428sec /万次。

后来我查了查原因,得到的结论如下:

list()需要全局查找和函数调用,但[]编译为单个指令。

Python 2.7.3
>>> import dis
>>> print dis.dis(lambda: list())1           0 LOAD_GLOBAL              0 (list)3 CALL_FUNCTION            06 RETURN_VALUE
None
>>> print dis.dis(lambda: [])1           0 BUILD_LIST               03 RETURN_VALUE
None

python基本数据类型

为什么[]比list()更快?相关推荐

  1. 比Momentum更快:揭开Nesterov Accelerated Gradient的真面目NAG 梯度下降

    d为累计梯度 作为一个调参狗,每天用着深度学习框架提供的各种优化算法如Momentum.AdaDelta.Adam等,却对其中的原理不甚清楚,这样和一条咸鱼有什么分别!(误)但是我又懒得花太多时间去看 ...

  2. 使用现场总线更快更远

    使用现场总线更快更远 Going faster and further with Fieldbus PROCENTEC等行业专家表示,基于RS-485的现场总线技术(PROFIBUS®)和工业以太网( ...

  3. TensorRT 3:更快的TensorFlow推理和Volta支持

    TensorRT 3:更快的TensorFlow推理和Volta支持 TensorRT 3: Faster TensorFlow Inference and Volta Support 英伟达Tens ...

  4. SOLOv 2:实例分割(动态、更快、更强)

    SOLOv 2:实例分割(动态.更快.更强) SOLOv2: Dynamic, Faster and Stronger 论文链接: https://arxiv.org/pdf/2003.10152.p ...

  5. qt 显示加速_新能源 | 吉利星越ePro上市 补贴后17.58万起售 加速更快油耗更低

    点击上方"蓝字"关注我们 新车速递 | 车市速报 吉利星越ePro上市 补贴后17.58万起 加速更快油耗更低 编辑 | 马   妍 排版 | 马   妍 「本文阅读时长约为3分钟 ...

  6. 使用Python,dlib中新型、更快、更小的5点面部标志检测器检测人脸、眼睛、鼻子

    这篇博客将介绍一个新的dlib面部标志检测器--5点人脸标志模型,它比原始版本更快(提高了8-10%),效率更高,模型更小(降低了10倍). 该5点面部标志检测器被认为是最初随dlib库一起分发的68 ...

  7. 更好的Java虚拟机Zing: 更好的性能,无停顿,更快的启动

    Zing虚拟机文档Understanding Java Garbage Collection(了解Java垃圾收集) 首先说明这个Zing是收费的,但是他也是优秀的,我觉得我们可以研究下他的一些思想对 ...

  8. CSS vs. JS Animation: 哪个更快

    CSS vs. JS Animation: 哪个更快? CSS vs. JS Animation: 哪个更快? 基于JavaScript的动画竟然已经默默地比CSS的transition动画快了?而且 ...

  9. CSS 和 JS 动画哪个更快

    基于Javascript的动画暗中同CSS过渡效果一样,甚至更加快,这怎么可能呢?而Adobe和Google持续发布的富媒体移动网站的性能可媲美本地应用,这又怎么可能呢? 本文逐一遍览了基于Javas ...

  10. 一个让Python代码运行更快的最佳方式!

    作者 | Serdar Yegulalp 译者 | 姜松浩,责编 | 屠敏 转载自 CSDN(ID:CSDNnews) Python因其强大.灵活且易于使用等特性,而赢得了声誉.这些优点使其在各种各样 ...

最新文章

  1. 833 计算机学科专业基础综合,2017年西安电子科技大学计算机学院833计算机学科专业基础综合考研仿真模拟题...
  2. Windows7瘦身和备份
  3. python使用缩进作为语法边界-python二级备考 day2
  4. linux切换root密码错,(转)Linux下root密码丢失和运行级别错误的解决办法
  5. SQL 调试:无法启动 T-SQL 调试。未能附加到 SQL Server 进程
  6. 如何编写用户操作手册
  7. find_cmd函数分析
  8. 01-国内开源镜像站汇总
  9. sudo: sorry, you must have a tty to run sudo
  10. iic总线从机仲裁_总线-IIC-SPI
  11. 华科计算机系研究生遗书,看完华中科大研究生遗书《狗血的研究生生涯》,泪目了!有话要说...
  12. U-Boot提供的指令
  13. 如何用word制作英语答题卡_初中英语考试答题卡可编辑WORD版
  14. Win11如何重置电脑 Win11重置电脑教程
  15. 带你走进神经网络的“前世今生”
  16. xp计算机找不到音量调节,WinXP电脑没声音且小喇叭不见了如何解决?
  17. 计算机有哪些值得参加的比赛
  18. 【LSTM时间序列数据】基于matlab LSTM时间序列数据预测【含Matlab源码 1949期】
  19. (单纯性和L1 ball)投影梯度法
  20. TDMS转EXCEL

热门文章

  1. [转载]超酷代码-使用 ASP.NET AJAX 进行拖放
  2. for循环如果先--_如果再写for循环,我就锤自己!
  3. java 浅堆 深堆_JVM中的一个小知识点:深堆和浅堆的概念
  4. mysql二进制格式_二进制格式安装 MySQL
  5. c# 数组中的空值_2.1.1 聊聊 C# 的版本及特性
  6. (21)xilinx PCIE 开发方法(学无止境)
  7. (87)FPGA锁存器与触发器-面试必问(十一)(第18天)
  8. (48)Xilinx Adder IP核配置(九)(第10天)
  9. ajax原生为什么else会执行2次,关于Ajax,明明传过去的值是1,可不知道为什么就是else起作用?...
  10. java机考_【Java】(机考常用)类集