美文网首页
python-确定长度的字典型数组定义

python-确定长度的字典型数组定义

作者: 一只孢子 | 来源:发表于2021-05-13 11:25 被阅读0次

操作

定义一个包含5个空字典的数组

错误的定义方式

list = [{}]*5

错误原因

python中使用乘号复制时,只复制了3个索引,即都指向同一个物理地址,我们在操作其中任何一个时,会同时修改其他内容。


image.png

python在用乘号(*)复制时,只会复制索引,不会分配物理地址,在对每个元素赋值时才会分配物理地址,而字典的赋值list[1]['B']=2直接跳过了对list[1]的地址分配阶段,因此报错。当我们对list[2]赋值后,该元素即不受影响。

image.png

正确的定义方式

i=0
list=[]
while i<5:
list.append({})
i+=1

image.png

参考:python坑:数组中需要多个字典型时使用乘号复制多个空字典的问题_u011550708的专栏-CSDN博客

相关文章

  • python-确定长度的字典型数组定义

    操作 定义一个包含5个空字典的数组 错误的定义方式 list = [{}]*5 错误原因 python中使用乘号复...

  • 基于数组、链表、哈希表实现自定义的List、Map接口

    一、基于数组实现自定义的List接口 1.数组介绍 数组长度固定,不允许动态定义数组大小,在使用之前必须确定大小;...

  • Golang——数组array

    数组是同一种数据类型元素的集合。数组声明时需要确定数组大小,一旦定义,不可修改。数组的长度必须是常量,并且长度是数...

  • Java基础之数组(八)

    一、数组定义 存储多个相同数据类型的固定长度有序集合 二、特点 1、数组是一个引用数据类型2、数组的长度一旦确定不...

  • 数组定义相关

    定义一维数组时,必须显式指明数组的长度; 定义多维数组时,其一维数组的长度必须首先指明,其他维数组长度可以稍后指定...

  • 数组知识点整理

    @TOC 数组引入 定义 数组是同类型的有序的数据集合 数组长度一旦确定就不能改变 数组类型可以是任何类型,包括基...

  • 04shell数组

    定义数组 读取 数组所有元素 数组长度

  • 六.Go数组

    数组array 定义数组的格式 var 数组名称 [数组长度]{数组内容} 数组长度也是类型的一部分,隐刺不同长度...

  • shell笔记19(数组)

    定义数组: array = $()定义数组 数组长度: 显示数组元素: 显示所有元素: 删除元素与覆盖: ...

  • Java数组的定义与遍历方法

    一、定义 数组是有序数据的集合,数组中的每个元素具有相同的数组名和下标来做唯一标识。 注意: 数组长度一旦确定无法...

网友评论

      本文标题:python-确定长度的字典型数组定义

      本文链接:https://www.haomeiwen.com/subject/aautjltx.html