1.序列类型包括列表(list)、元组(tuple)、字典(dict)和集合(set)
列表(list)和元组(tuple)比较相似,它们都按顺序保存元素,所有的元素占用一块连续的内存,每个元素都有自己的索引,因此列表和元组的元素都可以通过索引(index)来访问。它们的区别在于:列表是可以修改的,而元组是不可修改的。
list1 = [1,2,3,'q',[9,'b']]
print(list1[-1][1])
tuple1 = ('123',9,'asv')
print(tuple1[1])
list2 = [1,2,3,'q',[9,'b']] list2[-1][1]=90 print(list2) tuple2 = ('123',9,'asv') tuple2[1] = 80 print(tuple2) #报错TypeError: 'tuple' object does not support item assignment
2.字典(dict)和集合(set)存储的数据都是无序的,每份元素占用不同的内存,其中字典元素以 key-value
的形式保存
dict1 = {'a':90,'b':80}
print(dict1['a'])
3.list的添加元素的3种方法
append() 方法用于在列表的末尾追加元素
listname.append(obj)
extend() 不会把列表或者元祖视为一个整体,而是把它们包含的元素逐个添加到列表中
listname.extend(obj)
insert() 也会将它们视为一个整体,作为一个元素插入到列表中
listname.insert(index , obj)
list3 = [1,2,3,'q',[9,'b']]
list3.append('love')
print('输出append添加元素后的结果',list3)
list3.insert(1,90)
print('输出inster添加元素后的结果',list3)
list3.extend('l')
print('输出extend添加元素后的结果',list3)
4.list列表删除元素
根据目标元素所在位置的索引进行删除,可以使用 del 关键字或者 pop() 方法;
del listname[index]
del listname[start : end]
listname.pop(index)
list4 = [1,2,3,'q',[9,'b']] del list4[0] del list4[0:2] print(list4) list5 = [1,2,3,'q',[9,'b']] list5.pop(0) print(list5)
根据元素本身的值进行删除,可使用列表(list类型)提供的 remove() 方法;
remove() 方法只会删除第一个和指定值相同的元素,而且必须保证该元素是存在的,否则会引发 ValueError 错误
list6 = [1,2,3,'q',[1,9,'b']]
list6.remove(1)
list6.remove(8)# 报错ValueError: list.remove(x): x not in list
print(list6)
将列表中所有元素全部删除,可使用列表(list类型)提供的 clear() 方法。
clear() 用来删除列表的所有元素,也即清空列表,id不变。
list7 = [1,2,3,'q',[1,9,'b']]
list7.clear()
print(list7)