您的位置:首页 > 编程语言 > Python开发

Python列表(list)基本属性及常用函数

2019-06-12 20:49 127 查看

列表list基础

1.什么是列表?
本质:是一种有序的集合。
列表的创建:
list1 = [元素1,元素2,元素3,…]

2.创建空列表
list1 = list()
list2 = []
注意:列表中的元素类型可以是任意python中的基本数据类型或者是自定义的数据类型

3.列表中元素的访问
使用索引的方式访问
list1[index]
index取值范围[0,len(list1))
当index超出取值范围的时候会出现IndexError的错误【下标越界的错误】
取值可以为负,为负的时候从倒数第一个开始取

4.获取列表的长度
len(list1)

5.列表元素的替换
list1[index] = 值
功能:更改列表中指定下标处的值

6.列表的组合
list3 = list1+list2
功能:将list1中的元素与list2中元素取出组合成一个新的列表并且返回。

7.列表的重复
list2 = list1*n
功能:将list1中的元素重复n次输出到新的列表中

8.判断元素是否在列表中存在
元素 in 列表
功能:若存在返回True,否则返回False

9.列表的截取
list1[start,stop,step]
start默认0
stop默认len(list1)
step默认1,取值可以为负
若指定start与stop取值范围[start,stop)

list1=[1,2,3,4,5,6,7,8]
print(list1[:-1])
print(list1[1:])
print(list1[::-1])
print(list1[-2::-1])
print(list1[:0:-1])

# [1, 2, 3, 4, 5, 6, 7]
# [2, 3, 4, 5, 6, 7, 8]
# [8, 7, 6, 5, 4, 3, 2, 1]
# [7, 6, 5, 4, 3, 2, 1]
# [8, 7, 6, 5, 4, 3, 2]

10.二维列表
列表中元素可以是Python的基本数据类型,也可以是自定义的数据类型。
当列表中存放的元素刚好又是列表的时候,我们可以称这个列表为二维列表
list1 = [列表1,列表2,…,列表n]

11.二维列表的访问
list1[index1][index2]
index1:代表第几个列表
index2:代表列表中第几个元素

列表常用函数

1.list1.append(obj)
功能:在列表的末尾添加指定的对象,不返回新的列表!

2.list1.extend(序列)
功能:将序列中的元素打碎追加到list1中,不返回新列表
注意:extend后面必须是序列

list1=["hello",22]
list1.extend(("sdsds",True,1))
print(list1)

list2 = [1,23,4]
list2.extend("ssfsasf")
print(list2)

# ['hello', 22, 'sdsds', True, 1]
# [1, 23, 4, 's', 's', 'f', 's', 'a', 's', 'f']

3.list1.insert(index,obj)
功能:将obj插入到指定的下标处,原下标处的元素依次顺延。不返回新列表

4.list1.pop(index)
功能:将指定下标处的元素删除,并且将删除的元素返回。
若index不指定则默认删除最后一个元素。

list1=["hello",22,2,2,2,2,3]
list3=list1.pop(2)
print(list1)
print(list3)

# ['hello', 22, 2, 2, 2, 3]
# 2

5.list1.remove(元素)
功能:将列表中第一个匹配的元素移除,不返回新列表

6.list1.clear()
功能:清除列表中元素【列表还存在】,不返回新列表

7.del.list1
功能:直接删除列表

8.list1.index(obj,start,end)
功能:在list1中查找obj是否存在,若查找到则返回obj第一次查询到的下标值
若查找不到则报错。查询范围[start,end),指定则查询整个列表。

9.list1.count(obj)
统计obj在list1中出现的次数

10.max(list1)
功能:返回列表中的最大值
同理: min(list1)

11.list1.reverse()
功能:将列表中的元素倒叙,操作原列表,不返回新的列表。

12.list1.sort(reverse=False)
功能:将list1中的元素进行升序排列【默认reverse=False】,不返回新的列表
当reverse为True的时候,降序排列。

列表的拷贝

1.赋值拷贝/引用拷贝
特点:共用同一块内存区域,更改其中任意一个变量,其他的变量都会受到影响。

2.浅拷贝
list2 = list1.copy()
只适用于一维列表。
不完全内存拷贝,对于一维列表重新开辟了一块内存空间,但若出现二维列表的情况下,
因为二维列表存放在一维列表中存放的是列表的地址,因此,若出现二维列表相当于间接的引用了同一块
内存区域。

3.深拷贝
import copy
list2 = copy.deepcopy(list1)
完全内存拷贝,相当于将list1中的所有列表中元素重新复制了一份,对于多维的也重新开辟了
内存空间,因此它不会出现内存共用的情况。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐