对Python3中列表乘以某一个数的示例详解

yipeiwu_com7年前Python基础

在Python列表操作中:列表乘以某一个数,如list2 = list1 * 2 得到一个新的列表是list1的元素重复n次,且list1不改变。

但运行如下代码时,得到的新列表b中,b[0]和b[1]的地址相同,即对b[0]进行操作,b[1]也会发生改变。

a = [0]
b = [a] * 2
print(b)
b[0].append(1)
print(b)

输出为:

[[0], [0]]
[[0, 1], [0, 1]]

随后尝试以下几种代码:

代码(1)

a = [0]
b = [a for _ in range(2)]
print(b)
b[0].append(1)
print(b)

输出仍为:

[[0], [0]]
[[0, 1], [0, 1]]

代码(2)

a = [0]
b = [list(a) for _ in range(2)]
print(b)
b[0].append(1)
print(b)

输出为:

[[0], [0]]
[[0, 1], [0]]

代码(3)

b = [[] for _ in range(2)]
print(b)
b[0].append(1)
print(b)

输出为:

[[], []]
[[1], []]

以上这篇对Python3中列表乘以某一个数的示例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python简单日志处理类分享

简单的一个python日志处理类 复制代码 代码如下: #/usr/bin/python #coding=utf-8 import time,types class logsys: &n...

Pyqt QImage 与 np array 转换方法

项目使用Pyqt作为UI框架,使用相机线程捕捉image,并在QGraphicsView中显示,遇到以下问题: 1、采集的数据为nparray数据,需转换为QImage 转换代码如下:...

跟老齐学Python之从if开始语句的征程

跟老齐学Python之从if开始语句的征程

一般编程的教材,都是要把所有的变量类型讲完,然后才讲语句。这种讲法,其实不符合学习的特点。学习,就是要循序渐进的。在这点上,我可以很吹一通了,因为我做过教师,研究教育教学,算是有一点心得...

python执行外部程序的常用方法小结

本文实例总结了python执行外部程序的常用方法。分享给大家供大家参考。具体分析如下: 在python中我们可以通过下面的方法直接调用系统命令或者外部程序,使用方便 1、os模块的exe...

Django csrf 两种方法设置form的实例

第一种方法,在视图函数上边添加一条语句 @csrf_exempt 例子: @csrf_exempt def login(request): return render_to_...