python进阶,在第一期的基础上做了极大的优化,整体更加美观易懂
十一、运算符和公共方法 (上)
内容较多(超过3000字),分为上下两个篇幅,此篇是上
11.1、运算符,支持容器类型
str1, str2 = "abc", "def" # 字符串,等同于str1 = "abc", str2 = "def",一一对应,下文同理
list1, list2 = [1, 2], [3, 4] # 列表
t1, t2 = (11, 21), (31, 41) # tuple元组
set1, set2 = {10, 11}, {20, 21} # 集合
dict2 = {"name": "qao", "age": 99} # 字典
list1, list2 = [1, 2], [3, 4]
t1, t2 = (11, 21), (31, 41) # tuple元组
print(str1 + str2) # 结果:abcdef
print(t1 + t2) # 结果:报错,集合和字典不支持合并
t1 = (11, 21)
dict2 = {"name": "qao", "age": 99}
print(t1 * 3) # 结果:(11, 21, 11, 21, 11, 21) # 复制3次
print(dict2 * 4) # 报错:集合和字典不支持复制
11.2、字典的in和not in用法
str1 = "abc"
dict2 = {"name": "qao", "age": 99}
print("a" in str1) # 结果:True # 检测a是否在str1中
print("qao" in dict2) # 结果:False
str1 = "abc"
dict2 = {"name": "qao", "age": 99}
print("a" not in str1) # 结果:False # 检测a是否不在str1中
print("qao" not in dict2) # 结果:True
dict2 = {"name": "qao", "age": 99}
print("age" in dict2) # 结果:True
print(dict2["name"] in dict2.values()) # 结果:True
11.3、公共方法
t3 = (12, 22, 32, 42) # tuple元组
dict3 = {"xm": "guy", "age": 60, "id": 123456} # 字典
print(len(t3))
print(len(dict3)) # 打印键值对的个数
# 结果:
>>> 4
>>> 3
str3 = "abcd" # 字符串
del set3 # 根据集合名称删除
print(set3)
# 结果:
>>> 列表不存在,会报错
list3 = [1, 2, 4, 6, 1] # 列表
del list3[2] # 根据下标删除,下标从0开始计数,所以删除的是4
print(list3)
# 结果:
>>> [1, 2, 6, 1]
dict3 = {"xm": "guy", "age": 60, "id": 123456} # 字典
del(dict3["xm"]) # 因为是按键值对存储,所以值也被删除(不记得的有关文章)
print(dict3)
# 结果:
>>> {'age': 60, 'id': 123456}
str3 = "abcd" # 字符串
print(max(str3))
print(min(str3)) # 英文大小的排序是按照字母的排序
# 结果:
>>> d
>>> a
set3 = {500, 400, 300, 200, 100} # 集合
print(max(set3))
print(min(set3))
# 结果:
>>> 500
>>> 100
dict3 = {"xm": "guy", "age": 60, "id": 123456} # 字典
print(max(dict3))
print(min(dict3))
# 结果:
>>> id
>>> age
# 生成1到10中间的数字
for i in range(1, 11): # 包前不包后,步长不写,默认为1
print(i)
# 结果:
>>> 1
>>> 2
>>> 3
>>> 4
>>> 5
>>> 6
>>> 7
>>> 8
>>> 9
>>> 10
for i in range(1, 11, 2): # 包前不包后,步长不写,默认为1(此处设置为2),步长就是增量
print(i)
# 结果:
>>> 1
>>> 3
>>> 5
>>> 7
>>> 9
for i in range(10): # 代表开始不写,默认从零开始,步长为1
print(i)
# 结果:
>>> 0
>>> 1
>>> 2
>>> 3
>>> 4
>>> 5
>>> 6
>>> 7
>>> 8
>>> 9
list3 = [1, 2, 4, 6, 1] # 列表
for i in enumerate(list3): # 返回的数据类型是元组,元组中第一个数字是序列中数字对应的下标,第二个数字是序列中的数字
print(i)
# 结果:
>>> (0, 1)
>>> (1, 2)
>>> (2, 6)
>>> (3, 1)
list3 = [1, 2, 4, 6, 1] # 列表
for i in enumerate(list3, start=2): # start设置下标的起始值
print(i)
# 结果:
>>> (2, 1)
>>> (3, 2)
>>> (4, 6)
>>> (5, 1)