1、版本3.6后,字典的底层数据结构发生了变化。
2、实际数据存储和索引分开存储。indices是将数据存储在二维数组中,其他内容保持不变。这保证了Dictionary在添加新键值时按顺序保存。
实例
my_dict['address']='xxx' my_dict['salary']=999999 ##此时的内存示意图 indices=[1,0,None,None,None,None,2,None] entries=[[-5954193068542476671,指向name的指针,执行kingname的指针], [9043074951938101872,指向address的指针,指向xxx的指针], [7324055671294268046,指向salary的指针,指向999999的指针] ]
以上就是python字典的底层原理,希望对大家有所帮助。更多Python学习指路:Python基础教程