一、运算符
| 运算符 | 描述 | 支持的容器类型 | | ------ | ---------- | ------------------------------ | | + | 合并 | 字符串,列表,元组 | | * | 复制 | 字符串,列表,元组 | | in | 是否存在 | 字符串,列表,元组,字典,集合 | | not in | 是否不存在 | 字符串,列表,元组,字典,集合 |
1.+合并
# 1. 字符串 str1 = 'aa' str2 = 'bb' str3 = str1 + str2 print(str3) # aabb # 2. 列表 list1 = [1, 2] list2 = [10, 20] list3 = list1 + list2 print(list3) # [1, 2, 10, 20] # 3. 元组 t1 = (1, 2) t2 = (10, 20) t3 = t1 + t2 print(t3) # (10, 20, 100, 200)
2.*复制
# 1. 字符串 print('-' * 10) # ---------- # 2. 列表 list1 = ['hello'] print(list1 * 4) # ['hello', 'hello', 'hello', 'hello'] # 3. 元组 t1 = ('world',) print(t1 * 4) # ('world', 'world', 'world', 'world')
3.in或not in
# 1. 字符串 print('a' in 'abcd') # True print('a' not in 'abcd') # False # 2. 列表 list1 = ['a', 'b', 'c', 'd'] print('a' in list1) # True print('a' not in list1) # False # 3. 元组 t1 = ('a', 'b', 'c', 'd') print('aa' in t1) # False print('aa' not in t1) # True
二、公共⽅法
len():计算容器中元素个数 del 或 del() : 删除 max():返回容器中元素最大值 min():返回容器中元素最小值 range(start,end, step):生成从start到end的数字,步长为step,供for循环使用 enumerate() : 函数⽤于将⼀个可遍历的数据对象(如列表、元组或字符串)组合为⼀个索引序列,同时列出数据和数据下标,⼀般⽤在 for 循环当中。 sum():序列求和 zip():合并系列
max()
# 1. 字符串 str1 = 'abcdefg' print(max(str1)) # g # 2. 列表 list1 = [10, 20, 30, 40] print(max(list1)) # 40
min()
# 1. 字符串 str1 = 'abcdefg' print(min(str1)) # a # 2. 列表 list1 = [10, 20, 30, 40] print(min(list1)) # 10
enumerate()
语法:enumerate(可遍历对象, start=0)
list1 = ['a', 'b', 'c', 'd', 'e'] for i in enumerate(list1): print(i) for index, char in enumerate(list1, start=1): print(f'下标是{index}, 对应的字符是{char}')
start参数⽤来设置遍历数据的下标的起始值,默认为0
三、容器类型转换
tuple():将某个序列转换成元组
list1 = [10, 20, 30, 40, 50, 20] s1 = {100, 200, 300, 400, 500} print(tuple(list1)) print(tuple(s1))
list():将某个序列转换成列表
t1 = ('a', 'b', 'c', 'd', 'e') s1 = {100, 200, 300, 400, 500} print(list(t1)) print(list(s1))
set():将某个序列转换成集合
list1 = [10, 20, 30, 40, 50, 20] t1 = ('a', 'b', 'c', 'd', 'e') print(set(list1)) print(set(t1))
四、推导式
推导式(comprehensions),又称为解析式,是Python的一种独有特性,其运算逻辑主要是基于条件判断和表达式,从一个数据序列构建另一个新的数据序列。
对于列表推导式(list comprehension),其运算逻辑可以简单地描述为:遍历一个可迭代对象(如列表、元组、字符串等),对每一个元素应用一个表达式,然后将结果收集到一个新的列表中。如果有需要,还可以在遍历过程中加入条件判断,只将满足条件的元素纳入新列表。
例如,假设我们有一个列表numbers = [1, 2, 3, 4, 5]
,我们想要创建一个新的列表,其中包含原列表中每个元素的平方。这可以通过列表推导式轻松实现:squares = [x**2 for x in numbers]
。在这个例子中,x**2
是应用的表达式,for x in numbers
是遍历可迭代对象的部分。
列表推导式
例:创建一个空列表,追加1到10这几个数字 for循环实现过程
list1 = [] for i in range(1,11): list1.append(i) print(list1)
列表推导式实现过程
list1 = [i for i in range(1,11)] print(list1)
带if的列表推导式(将1到10的偶数添加到列表)
方法一:利用步长实现
list1 = [i for i in range(0, 11, 2)] print(list1)
方法二:if实现
list1 = [i for i in range(10) if i % 2 == 0] print(list1)
字典推导式
例:创建⼀个字典:字典key是1-5数字,value是这个数字的2次⽅
dict1 = {1: 1, 2: 4, 3: 9, 4: 16, 5: 25} dict1 = {i: i**2 for i in range(1, 6)} print(dict1)
将两个列表变为⼀个字典
list1 = ['name', 'age', 'sex'] list2 = ['Tom', 20, '男'] dict1 = {list1[i]: list2[i] for i in range(len(list1))} print(dict1)
提取字典中⽬标数据
computs = {'AUC': 268, 'HP': 125, 'DELL': 201, 'Lenovo': 199, 'acer': 99}# 需求:提取上述电脑数量⼤于等于200的字典数据 count1 = {key: value for key, value in computs.items() if value >= 200} print(count1) # {'MBP': 268, 'DELL': 201}
集合推导式
计算数字 1,2,3 的平方数
setnew = {i**2 for i in (1,2,3)} print(setnew)
输出非abc的字母
a = {x for x in 'abracadabra' if x not in 'abc'} print(a) {'d', 'r'}
元组推导式
生成包含1到9数字的元组
a = (x for x in range(1,10)) print(a)# 返回的是生成器对象 # <generator object <genexpr> at 0x7faf6ee20a50>
使用 tuple() 函数,可以直接将生成器对象转换成元组
标签:10,20,python,list1,列表,公共,print,自学,元组 From: https://blog.csdn.net/weixin_66370632/article/details/137006318print(tuple(a)) (1, 2, 3, 4, 5, 6, 7, 8, 9) print(tuple((x for x in range(1,10)))) (1, 2, 3, 4, 5, 6, 7, 8, 9)