一、列表(list)
列表的所有元素放在一对[]内,相邻元素之间用逗号分隔
列表没有长度限制,元素类型可以不同,不需要预定义长度
列表内元素有顺序,可以使用索引
线性的数据结构
列表是可变的
a = [12,2,3,45,21]
b = ['python',2,"java"]
c = [{
'C++':229,'C':129},[41,55,52,36]]
d = ["cake",{
2},{
5:6},(2,)]
print(a+b+c+d)
[12, 2, 3, 45, 21, 'python', 2, 'java', {
'C++': 229, 'C': 129}, [41, 55, 52, 36], 'cake', {
2}, {
5: 6}, (2,)]
1、列表的创建
a_list = [‘python’] 使用方括号创建列表
list() list()函数把可迭代对象转换为列表类型
列表不可以预定义大小
2、列表的访问
与字符串访问一致,[0,n-1],[-n,-1]
ls = ['book',23,[2010,'stud1'],20]
print(ls[2][1][-1])
1
3、列表的操作方法
count(value) # 返回列表中value的个数
append(x) # 列表尾部追加元素,返回值为None,表示就地修改
insert(index,x) # 在指定的索引index处插入元素x
extend(iterable) # 将可迭代对象的元素添加进来,返回None
remove(value) # 从左到右查找第一个匹配的value值,移除该元素,返回None
pop(index) # 将列表下标为index的元素删除并返回
reverse() # 列表元素反转
clear() # 清除,列表所有元素,剩下一个空列表
sort(key = None,reverse = False) # 将列表元素反转,返回None,reverse = True,反转,降序
index(value[start,stop]) # 通过value值,从指定区间查找表内的元素是否匹配
copy() # 生成一个新的列表,复制s中的所有元素
# (1)append()、insert()、extend()
# 这3个方法均可用于向列表中添加元素,而且都属于原地操作,不影响列表对象在内存中的起始位置
x = [11,22,33]
print(id(x))
print(x.append(44))
print(id(x))
print(x.insert(2,55))
print(id(x))
print(x.extend([1,2,3]))
print(id(x))
print(x)
1537460285632
None
1537460285632
None
1537460285632
None
1537460285632
[11, 22, 55, 33, 44, 1, 2, 3]
# (2)pop()、remove()、clear()
# 这3个方法均可用于删除列表中的元素,而且也都属于原地操作,不影响列表对象在内存的地址,另外del语句删除列表中的指定元素
x = [1,2,3,4,5,6,7]
x.pop() # 删除并弹出尾部元素
print(x)
x.remove(3) # 删除首个值为3的元素
print(x)
del(x[4]) # 删除指定位置的元素
print(x)
x.clear() # 删除所有元素
print(x)