Python基础数据类型之一列表list,在python中作用很强在,列表List可以包含不同类型的数据对像,同时它是一个有序的变量集合,每个变量可以存储一个地址。所有序列能用到的标准操作方法,列表也都可以使用,比如切片、索引等,python的list是可变数据类型,它支持添加 append、插入 insert、修改、删除del等操作。
Python列表list的创建
可以把python中的list列表理解为任意对像的序列,只要把需要的参数值放入到中括号[ ]里面就可以了,就像下面这样操作:
names = ['ada','amy','ella','sandy']
列表可以包含不同类型对像,也支持嵌套:
例如a = ['a',567,['adc',4,],(1,2)]
这个列表中就包含了字符串、整型、元组这些元素,同时还嵌套了一个列表。
修改列表list中的值
列表是有序的,可以通过python list下标来修改特定位置的值。下面用举例说明的方法来介绍下如何修改列表参数:
>>>a = [1,9,9]
>>>a [0] = 9
>>>a
[9,9,9]
列表的修改操作,也可以把它看成是特定位置重新赋值的操作。
查看list地址
list内存结构 id()
遍历list
mylist = [1,2,3,4]
for i in range(len(mylist))
print(mylist[i]) 每个元素都有一个地址
Python list 列表删除操作
python 列表删除最常用到的方法有三种:del、remove、pop,使用方法和用途也并不相同,这里先了解下del这种最方便的入门级列表删除操作方法。
现有列表 names = ['ada','amy','ella','sandy'],要求是把上面列表中的'amy'删除,思路是:先知道'amy'在列表names中的索引位置,之后配合del这个方法来删除。列表del方法具体使用方法如下:
>>>names = ['ada','amy','ella','sandy']
>>>del names[1]
>>>names
['ada','ella','sandy']
list索引
修改列表必须用索引 下标循环
for i in range(len(mylist))
if mylist[i]==2:
mylist[i]=3
del mylist[i]
break
print(mylist)
列表元素循环不能修改列表
for data in mylist:
if data==2:
data=3
print(mylist)
data是副本不能修改列表
mylist = [1,2,3,4,5]
print(mylist[0]) 正索引
print(mylist[-1])负索引
print(mylist[2:-1])
列表运算符
* 复制, + 归并, in, not in
得到的是新的列表
列表常用方法
sort() 排序 从小到大
reverse()反转
clear()清空
count()统计出现的次数
index()求下标
pop()弹出最后一个数据
insert() 插入新数据
insert(index下标,obj) 索引位置插入
深浅复制
深复制 copy()函数 新开辟一个空间内存 用来存新复制的列表
ylist=[1,2,3,4,5]
mylistnew=mylist.copy()
print(id(mylist),id(mylistnew))
mylist[3]=10000
print(mylist)
print(mylistnew)
浅复制
mylistnew=mylist
mylist[3]=10000
print(id(mylistnew),id(mylist))
print(mylist)
print(mylistnew) #浅复制