栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在字典中使用字符串作为键总是更快吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在字典中使用字符串作为键总是更快吗?

Python字典下的C代码针对String键进行了优化。 您可以在此处(和博客所指的书中)中阅读有关内容。

如果Python运行时知道您的字典仅包含字符串键,则它可以执行某些操作,例如不解决字符串与字符串比较不会发生的错误,并忽略丰富的比较运算符。这将使字符串键的普通情况仅

dict
快一点。(更新:时间表明它要多一些。)

但是,这不太可能对大多数Python程序的运行时间产生重大影响。仅当您测量并发现

dict
查找是代码中的瓶颈时,才担心此优化。
正如名言所说:“过早的优化是万恶之源。”

要查看实际速度有多快的唯一方法是计时它们:

>>> timeit.timeit('a["500"]','a ={}nfor i in range(1000): a[str(i)] = i')0.06659698486328125>>> timeit.timeit('a[500]','a ={}nfor i in range(1000): a[i] = i')0.09005999565124512

因此,使用字符串键甚至比使用键大约快30%

int
,我不得不承认我对这种差异的大小感到惊讶。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/641563.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号