一、序列
-
序列:一种可迭代、元素有序的容器类型数据。
-
序列的索引操作:
-
通过索引来访问序列里的元素。
-
正值索引:从0开始,从左到右。
-
负值索引:最后一个元素索引为-1,从右到左。
3.加和乘操作
>>>a = 'Hello'
>>>a * 2
'HelloHello'
>>>a *= 2 # *= 是采赋值运算符,a *= 2相当于a = a * 2
>>>a
'HelloHello'
>>>a = 'Hello' + ','
>>>a
'Hello,'
>>>a += 'World' # += 是加赋值运算符,a += 'World' 相当于a = a + 'World'
>>>a
'Hello,world'
4.切片操作
(1)语法: [ start : end : step]
- start: 开始索引
- end:结束索引
- step:步长
- 步长:切片时获取的元素的间隔,可以是正整数(从左往右切),也可以是负数(从右往左切)。
(2)切下来的小切片包括start位置的元素,但不包括ens位置的元素,start和end都可以省略。
(3)省略开始索引,默认开始索引是0;省略结束索引,默认结束索引是序列的长度。
5.成员测试
(1)运算符
- in : 用于测试是否包含某一个元素。
- not in :用于测试是否不包含某一个元素。
二、列表
1.列表:一种可变序列类型,可以追加、插入、删除和替换列表中的元素。
2.创建列表
- list ( iterable ) 函数
——>即列表的构造函数。 - [ 元素1,元素2,元素3,… ]
3.追加元素 - 在列表中追加单个元素时,可以使用列表的append(x)方法。
- 在列表中追加多个元素时,可以使用加(+)运算符或列表的extend(t)方法。
- 例如:
>>>list = [20,10,50,30]
>>>list.append(80) #在列表后面追加一个元素,不能同时追加多个元素。
>>>list
[20,10,50,30,80]
>>>list = [20,10,50,30]
>>>t = [1,2,3]
>>>list += t #使用+=运算符追加多个元素。
>>>list
[20,10,50,30,1,2,3]
>>>list = [20,10,50,30]
>>>list.extend(t) #使用extend()方法追加多个元素。
>>>list
[20,10,50,30,1,2,3]
4.插入元素
- 向列表插入元素时,可以使用列表的list.insert(i,x)方法。
5.替换元素
- 替换列表中的元素时,将列表下标索引放在赋值符号(=)的左边,进行赋值即可。
6.删除元素
- 使用列表的list.remove(x)方法。
- 如有重复多个相同数值的元素,只会删除第一个。
三、元组
1.元组:是一种不可变序列类型。
2.创建元组
- tuple(iterable)函数
- (元素1,元素2,元素3,…)
#创建一个有4个元素的元组,创建元组时使用小括号把元素括起来,或省略
>>>21,32,43,45
(21,32,43,45) #运行结果
>>>('Hello','World') #创建字符串元组
('Hello','World')
>>>('Hello','World',1,2,3) #创建字符串和整数混合的元组
('Hello','World',1,2,3)
>>>tuple('Hello') #通过tuple()函数创建元组
('H','e','1','1','0')
>>>tuple([21,32,43,45]) #通过tuple()函数创建元组
(21,32,43,45)
>>>t = 1 #创建一个只有一个元素的元组,元素后面的逗号不能省略
>>>t
(1,)
>>>type(t)
<class 'tuple'>
>>>t = (1,) #创建一个只有一个元素的元组,元素后面的逗号不能省略
>>>type(t)
<class 'tuple'>
>>>a = () #通过()可以创建空元组
>>>type(a)
<class 'tuple'>
3.元组拆包
-
打包
-
拆包
>>> s_id,s_name = (102,'张三')
>>>s_id
102
>>>s_name
'张三’
#将元组(102,‘张三’)拆包到变量s_id和s_name
四、 集合(set)
1.是一种可迭代、无序的、不能包含重复元素的容器类型的数据。
2.创建集合
- set(iterable)函数
- {元素1,元素2,元素3,…}
3.修改集合
- add(elem): 添加元素,如果元素已经存在,则不能添加,不会抛出错误。
- remove(elem): 删除元素,如果元素不存在,则抛出错误。
- clear():清除集合。
>>>s_set = {'张三','李四','王五'}
>>>s_set.add('董六') #添加元素
>>>s_set
{'王五','张三','李四','董六'}
>>>s_set.remove('李四') #通过remove()方法删除元素,由于要删除的'李四'已经不在集合中,所以会抛出错误。
>>>'李四’ in s_set #在集合中也可以使用成员测似运算符in和not in
False
>>>s_set
{'王五','张三','董六'}
>>>s_set.remove('李四')
Traceback (most recent call last):
File "<pyshell#14>",line 1, in <module>
s_set.remove('李四')
KeyError: '李四'
>>>s_set.clear()
>>>s_set
set()
五、字典(dict)
1.是迭代的、通过键(key)来访问元素的可变的容器类型的数据。
2.键视图不能包含重复元素,值视图能。
3.在键视图种,键和值是成对出现的。
4.创建字典
- dict()函数
- {key1:value1,key2:value2,…,key_n:value_n}
5.修改字典:都是针对键和值同时操作的,对字典的修改包括添加、替换和删除。
>>>dict1 = {102: '张三',105:'李四',109:'王五'}
#通过字典键返回对应的值
>>>dict1[109]
'王五'
>>>dict1[110] = '董六' #通过110键赋值,如果此时在字典中没有110键,则添加110:‘董六’键值对。
>>>dict1
{102:'张三',105:'李四',109:'王五',110:'董六'}
>>>dict1[109] = '张三' #将109键对应的值替换成‘张三’
>>>dict1
{102:'张三',105:'李四',109:'王五',110:'董六'}
>>>dict1.pop(105) #使用字典的pop(key)方法删除键值对,返回删除的值
'李四'
>>>dict1
{102:'张三',109:'张三',110:'董六'}
6.返回字典视图
- items():返回字典的所有键值对试图。
- keys():返回字典键视图。
- values():返回字典值视图。
>>>dict1 = {102: '张三',105:'李四',109:'王五'}
>>>dict1.items()
dict_items([(102,'张三'),(105,'李四'),(109,'王五')])
>>>list(dict1.items())
[(102,'张三'),(105,'李四'),(109,'王五')]
>>>dict1.key()
dict_keys([102,105,109])
>>>list(dict1.keys())
[102,105,109]
>>>dict1.value()
dict_values(['张三','李四','王五'])
>>>list(dict1.values())
['张三','李四','王五']