公共操作
一、运算符
运算符 | 描述 | 支持的容器类型 |
+ | 合并 | 字符串、列表、元组 |
* | 复制 | 字符串、列表、元组 |
in | 是否存在 | 字符串、列表、元组、字典 |
not in | 是否不存在 | 字符串、列表、元组、字典 |
str1 = 'aa'
str2 = 'bb'
list1 = [1, 2]
list2 = [10, 20]
t1 = (1, 2)
t2 = (10, 20)
dict1 = {'name': 'python'}
dict2 = {'id': '3'}
1.1 +
合并适用于字符串、列表、元组
print(str1 + str2) #aabb
print(list1 + list2) #[1, 2, 10, 20]
print(t1 + t2) #(1, 2, 10, 20)
1.2 *
复制适用于字符串、列表、元组
print(str1 * 5) #aaaaa
# 打印10个‘-’
print('-' * 10) #----------
print(list1 * 2) #[1, 2, 1, 2]
print(t1 * 3) #(1, 2, 1, 2, 1, 2)
1.3 in和not in
除了集合,字符串、列表、元组、字典都适用
语法:key in ditc ---- 查找的是键
print('a' in str1) #True
print('a' not in str1) #False
print(2 in list1) #True
print('10' in list2) #False
print(1 in t1) #True
print('python' in dict1) #False,因为查找的是键所以返回False
print('name' in dict1) #True
print('python' in dict1.keys()) #False
print('python' in dict1.values()) #True,在值的遍历中查找,所以返回True
二、方法
函数 | 描述 |
len() | 计算容器中元素的个数 |
del或del() | 删除 |
max() | 返回容器中元素最大值 |
min() | 返回容器中元素最小值 |
range(start, end, step) | 生成从start到end之间的数字,步长为step,供for循环使用 |
enumerate | 用于将一个可遍历的数据对象(如列表、元组、字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环中 |
str1 = 'abcdefg'
list1 = [10, 20, 30, 40, 50]
t1 = (10, 20, 30, 40, 50)
s1 = {10, 20, 30, 40, 50}
dict1 = {'name': 'Tom', 'age': '18'}
2.1 len()
print(len(str1)) #7
print(len(list1)) #5
print(len(t1)) #5
print(len(s1)) #5
print(len(dict1)) #2 一个键值对是一个数据
2.2 del/del()
del str1
del(list1[0])
2.3 max()和min()
print(max(str1)) #g
print(max(dict1)) #name
print(min(s1)) #10
print(min(dict1)) #age
2.4 range()
range()生成的序列不包含end数字;
range(start, end, step)start和end都是数字而不是下标
步长默认为1,如果不写开始,默认从0开始
for i in range(1, 10, 1):
print(i)
# 123456789 不包含end数字10
for i in range(1, 10, 2):
print(i)
# 13579
for i in range(10):
print(i)
# 012345678910
print(range(1, 10, 1))
#range(1, 10)
range()返回的是迭代对象
2.5 enumerate()
- enumerate(可遍历对象, start=0)
- start参数用来设置遍历数据的下标的起始值,默认为0
- enumerate()返回的结果是元组,元组第一个数据是原迭代对象的数据对应的下标,若设了start起始值,则数据不变,下标从起始值开始;元组第二个数据对应的是原迭代对象的数据。
list1 = ['a', 'b', 'c', 'd', 'e']
for i in enumerate(list1):
print(i)
结果:
(0, 'a') #从0开始
(1, 'b')
(2, 'c')
(3, 'd')
(4, 'e')
list1 = ['a', 'b', 'c', 'd', 'e']
for i in enumerate(list1, start=1):
print(i)
结果:
(1, 'a') #从1开始
(2, 'b')
(3, 'c')
(4, 'd')
(5, 'e')
三、容器类型转换(数据类型转换)
3.1 tuple()
将某个序列转换成元组
3.2 list()
将某个序列转换成列表
3.3 set()
将某个序列转换成集合
- 集合可以快速完成列表去重
- 集合不支持下标
list1 = [10, 20, 30, 40, 50]
s1 = {100, 200, 300, 400, 500}
t1 = ('a', 'b', 'c', 'd', 'e')
tuple(list1) #将列表转换成元组
tuple(s1) #将集合转换成元组
list(s1) #将集合转换成列表
list(t1) #将元组转换成列表
set(list1) #将列表转换成集合
set(t1) #将列表转换成集合