美文网首页
python 赋值奇特现象

python 赋值奇特现象

作者: 狂风之息_ | 来源:发表于2019-09-30 21:52 被阅读0次
a= [0]*2
a
Out[34]: [0, 0]
a[0] =1
a
Out[36]: [1, 0]
a= [0]*2
a[0] = datetime(2019, 3, 1)
a
Out[39]: [datetime.datetime(2019, 3, 1, 0, 0), 0]
a= [[0]*2]*3
a
Out[41]: [[0, 0], [0, 0], [0, 0]]
a[0][0] = datetime(2019, 3, 1)
a
Out[43]: 
[[datetime.datetime(2019, 3, 1, 0, 0), 0],
 [datetime.datetime(2019, 3, 1, 0, 0), 0],
 [datetime.datetime(2019, 3, 1, 0, 0), 0]]

有兴趣的朋友研究下。

可能因为[0] * 2是一个数组的对象,再* 3的话只是把对象的引用复制了3次
正确的做法:
way1:
a= [[0 for i in range(2)] for j in range(3)]
way2:
a= [[0] * 2 for j in range(3)]

相关文章

  • python 赋值奇特现象

    有兴趣的朋友研究下。 可能因为[0] * 2是一个数组的对象,再* 3的话只是把对象的引用复制了3次正确的做法:w...

  • Python变量和数据类型

    一. Python中的变量赋值 单变量赋值: 多变量赋值: 二. Python中的数据类型 Python有五个...

  • 奇特的现象

    每天晚上坐在窗前学习,透过窗户向外看——对面楼房亮灯的人家,我发现了一个奇特的现象。 放暑假的时...

  • python-List

    python赋初值 python 全部清零 python赋值是引用赋值,无引用就回收python与Java一样,不...

  • Python死磕——Python赋值语句、表达式以及打印

    Python赋值语句 Python中的赋值语句的基本形式是在等号左边写赋值语句的目标。要赋值的对象位于右侧。左侧的...

  • python cookbook学习笔记01

    python cookbook一些知识点 一、python数据结构与算法 python解压赋值 字符解压赋值 占位...

  • Python自学笔记Day7

    Python自学笔记——Day7 Python运算符 3. 赋值运算符 为Python变量提供赋值运算的符号 运算...

  • python初学13.Python程序的基本控制流程(上)

    Python的基本流程控制 复合赋值语句 在Python中,可以使用一次赋值符号,给多个变量同时赋值: 大家思考一...

  • Python学习教程:Python增强赋值及共享引用注意事项

    Python学习教程:Python增强赋值及共享引用注意事项 概述 Python中的增强赋值是从C语言中借鉴出来的...

  • python 赋值

    变量命名 名称格式:(下划线或者字母)+(任意数目的字母,数字或下划线) 注意: 区分大小写 禁止使用保留字 遵守...

网友评论

      本文标题:python 赋值奇特现象

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