python复制list
Ⅰ python list怎么
Python3里面 List有 ()方法
或者使用list[:]
a=[1,2,3]
b=a[:]
#实现复制
Ⅱ python3对于列表的 [:]和list. 有什么区别
我们日常所说的复制(自己在电脑硬盘上的复制)就是深复制(deep),即将被复制对象完全再复制一遍作为独立的新个体单独存在。所以改变原有被复制对象不会对已经复制出来的新对象产生影响。
而浅复制()并不会产生一个独立的对象单独存在,他只是将原有的数据块打上一个新标签,所以当其中一个标签指向的数据块就会发生变化,另一个标签也会随之改变。这就和我们寻常意义上的复制有所不同了。
Ⅲ python,将一个列表的数据复制到另一个列表中。
#coding=utf-8
import
list=[1,2,3]
#普通赋值(引用)
list_a=list
#切片赋值(引用)
list_b=list[:]
#浅拷贝
list_c=list.()
list_d=.(list)#需要导入包
#深拷贝
list_e=.deep(list)#需要导入包
Ⅳ python替换list元素,列表alist中有很多0数字,要替换成1
alist=[1,3,5,2,0,3,7,0,0,3,7]
foriinrange(len(alist)):
ifalist[i]==0:
alist[i]=1
printalist
Ⅳ Python的列表有没有浅复制跟深复制的概念
有的。比如:
首先这里导入模块,并生成三个列表
发现list2和list3有不同,其中list2就是浅复制,list3就是深复制
浅复制就是指当对象的字段值被复制时,字段引用的对象不会被复制,也就是引用的对象和原数据还是同一个,并没有产生一个新的对象
深复制指对对象中字段引用的对象也进行复制的一种方式,会产生一个新的值相同的不同对象
Ⅵ python里面的列表复制
strLst 里最后一个元素本身是一个可修改的list,Lst最后一个元素引用的也是这个对象,修改它当然也会导致原strLst 的最后一个对象内容发生变化。 而strLst 前几个元素是字符串 (不可改对象),你没有办法修改他们,Lst[1] = 'zzz' 这样的语句只是让Lst[1] 引用了不同的对象。
关于可修改 (mutable) 对象和不可修改对象(immutable)使用上的区别,建议你再去翻翻python的文档。
针对你的list特点,可以用下面这个简单的解决方法(注: 不适用于其他list 复制,比如list的某个元素本身又是一个包含有list的list):
importtypes
strLst=['hi','mom','dad',['xxx','yyy']]
Lst=[x[:]iftype(x)istypes.ListTypeelsexforxinstrLst]
此时修改Lst 不会影响原始list
Ⅶ python list操作
就是用类型转换啊
for i in list:
list2[int(float(i[0])*10)]=i
print list2
Ⅷ python列表拷贝
extend函数是将list2的内容附加到list1后面,返回值为None
list3=list1+list2
这样才能使list1与list2相加,结果赋值给list3
Ⅸ python 字符串 赋值给list
importast
x="[['sh600275','武昌鱼','4.68','10.12','1','0.05','0','11.84'],['sz002105','信隆实业','11.06','10.05','1','18.01','0','7.12'],['sz300402','宝色股份','13.81','10.04','1','1','0','4.37'],['sh603169','兰石重装','5.70','10.04','1','0.58','0','3.45'],['sz002528','英飞拓','15.03','10.03','1','0.2','146.19','3.26']]"
x=ast.literal_eval(x)
printx
Ⅹ python怎么把list依次赋值
import List2=.deep(List1)这样赋值,List2初始值和List1一样,因为是深度复制List1中的元素,所有深层元素都引用的是不回同的对象,List1的任何答改变不会影响List2