python进阶-----十一课(上)--运算符和公共方法

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}  # 字典

a、+: 合并,支持字符串,列表,元组

list1, list2 = [1, 2], [3, 4]
t1, t2 = (11, 21), (31, 41)  # tuple元组
print(str1 + str2)  # 结果:abcdef
print(t1 + t2)  # 结果:报错,集合和字典不支持合并

b、* : 复制,支持字符串,列表,元组

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用法

c、in: 元素是否存在,支持字符串,列表,元组,字典,结果返回布尔型为True和False

str1 = "abc"
dict2 = {"name": "qao", "age": 99}
print("a" in str1)  # 结果:True  # 检测a是否在str1中
print("qao" in dict2)  # 结果:False

d、not in: 元素是否不存在,支持字符串,列表,元组,字典,结果返回布尔型为True和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、公共方法

a、len():计算容器中元素个数

t3 = (12, 22, 32, 42)  # tuple元组
dict3 = {"xm": "guy", "age": 60, "id": 123456}  # 字典
print(len(t3))
print(len(dict3))  # 打印键值对的个数
# 结果:
>>> 4
>>> 3

b、del或del(): 删除,有根据下标删除,没有下标根据k删除

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}

c、max(): 返回容器中元素最大值
d、min():返回容器中元素最小值

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

e、range(start,end,step): 生成从start到end的数字,步长为step,供for循环使用

# 生成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

f、enumerate(可遍历对象): 函数用于将一个可遍历的数据对象(如列表、元组或字符串)结合为一个索引序列 ,同时列出数据和数据下标,一般用于for循环当中,用于改变序列中序列下标的起始值

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)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值