1、3.6版本后,字典的底层数据结构发生了变化。
2、实际数据存储和索引单独存储。indices将数据存储在二维数组中,其他内容保持不变。这确保了Dictionary在添加新键值时按顺序保存。
实例
my_dict['address']='xxx' my_dict['salary']=999999 ##此时内存示意图 indices=[1,0,None,None,None,None,2,None] entries=[[-59541930684247671,指向name的指针,执行kingname的指针] [9043074951938101872,指向address指针,指向xxx指针] [732405671294268046,指向salary的指针,指向9999999的指针] ]
以上是python字典的底层原理,希望对大家有所帮助。更多Python学习指南:python基础教程
本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。