正如@Leifingson和@Tim所提到的,这种行为取决于以前做过的事情。为了说明内存消耗,我将使用以下示例:Python 2.7 (r27:82525, Jul 4 2010, 09:01:59) [MSC v.1500 32 bit (Intel)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>> a = {}

>>> for k in xrange(1000000): a['a' * k] = k

...

Traceback (most recent call last):

File "", line 1, in

MemoryError

>>> len(a)

64036

如果我们采用摘要密钥长度:

^{2}$

我们将接近整数溢出!在

棘手的是:>>> import sys

>>> sys.getsizeof(a)

1573004

sys.getsizeof返回不同内容的大小,然后返回dict的所有项。可能是所有键哈希的大小,我不知道。在

之后>>> a = {}

将释放所有2GB的已分配内存,但会使GC(我责怪它)处于某种瘫痪状态。所以执行:>>> for k in xrange(1000000): a[k] = k

将导致:MemoryError

类似于所问的“魔法”数字:>>> len(a)

87382

python 字典长度_python字典可以容纳多少个元素?相关推荐

  1. python获取字典长度_python字典操作

    python中字典用于存放具有映射关系的数据 字典中的key不能相同 字典中的key必须为不可变类型,所以可以是数.字符串.元组, 但不能是列表 创建字典 通过{}创建 dict1 = {'eric' ...

  2. python 字典长度_python字典详解

    字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示: di ...

  3. python获取字典长度_Python中的字典

    1 字典的定义 dictionary(字典) 是 除列表以外Python之中 最灵活的数据类型 字典同样可以用来 存储多个数据 通常用于存储 描述一个 物体的相关信息 和列表的区别 列表是 有序的对象 ...

  4. python获取字典长度_python中的字典、元组和集合

    一.python中的字典 1.字典的表示方式:{key1:value1,key2:value2,key3:value3}: 2.字典的key通常情况下是字符串,也可以使用其他不可变的数据类型: 3.字 ...

  5. python获取字典长度_Python基础-字典

    字典的创建 字典是存放一系列键值对的数据结构,对标js中的对象,也对标java中的map. 现实中的例子就是通讯录,根据这个人的名字就可以得到他的电话号码. 定义字典的写法跟js中定义对象是一样的,两 ...

  6. python字典拷贝_python字典复制

    python学习系列--深拷贝和浅拷贝 概念 普通情况下,复制一个对象是不会新开辟内存空间的,只是把新的对象名称指向原有的内存地址,这种操作其实不是算是拷贝,只是新的引用.把新的对象置于新的内存空间中 ...

  7. python定义字典长度_字典详解dict

    [toc] ## 字典的定义与特性 字典是Python语言中唯一的映射类型. ### 定义: `{key1:value1,key2:value2}` 1. 键与值用冒号":"分开: ...

  8. python 字典代码_Python 字典(Dictionary)

    Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包 ...

  9. python 字典程序_Python 字典(Dictionary)操作详解

    Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = { ...

最新文章

  1. mysql 根据地图 坐标 查询 周边景区、酒店
  2. 蓝桥杯 - 连号区间数(暴力)
  3. XML解析的四种方式
  4. keyshot局部打光_keyshot7耳机渲染打光教程
  5. linux yum自动挂载_Linux系统本地Yum仓库制作
  6. Navicat安装(图文教程)
  7. MyBatis参数为Integer型并赋值为0时判断失误的问题解决
  8. 软件测试程序员每天的工作都是做什么的?有哪些是必须要做的?
  9. 2020-09-08风扇并联与串联应用学习
  10. 2022前端面试系列——Vue面试题
  11. 小米允许安装未知来源不用sim卡_视频能独立通话的小米手表,会像小米手机一样好用吗?...
  12. DNS是什么?工作原理、工作流程总结
  13. pika详解(四) channel 通道
  14. 动手学Excel数据分析与可视化
  15. Unity 3D基础入门编程_艾孜尔江撰稿
  16. Git详解之四 服务器上的Git
  17. 生产环境centos7 安装mysql 5.7.35
  18. 多国报告感染病例,我们对猴痘病毒了解多少?
  19. IDEA从零到精通(26)之MybatisX插件的安装与使用
  20. js字符串 new String()、String和String()之间的深度剖析

热门文章

  1. java基础教程知识点,[Java教程]js基础知识点总结
  2. C语言课后习题(13)
  3. linux中如何自定义命令行,linux终端颜色和命令行自定义
  4. 马踏棋盘python_马踏棋盘python实现
  5. 还不理解“分布式事务”?这篇给你讲清楚!
  6. 从基础到实践,一文带你看懂HashMap
  7. 【Python成长之路】Python爬虫 --requests库爬取网站乱码(\xe4\xb8\xb0\xe5\xa)的解决方法【华为云分享】
  8. 华为云大咖说-庄表伟:架构师的基本功——管理篇
  9. 设计模式的C语言应用-适配及系列模式-第六章
  10. 野生前端的数据结构练习(10)希尔排序,归并排序,快速排序