高级数据类型的公共方法
- 1内置函数
- 2高级数据类型切片
- 3运算符+,*,in
- 4完整的for循环
公共方法是列表,元组,字典,字符串都能使用的方法
1内置函数
内置函数:不需要import导入模块,就可以直接使用的函数,如print函数
1.统计容器中元素的个数
len()
2.删除变量,可以做关键字也可以做内置函数
del()
3.返回容器中的最大值
max()
4.返回容器中的最小值,统计字典的时候自会对字典的key进行统计,不会对值进行统计
min()
5.比较两个元素的大小,,-1表示小于,0表示等于,1表示大于。python3中这个函数已经被废除了,可以使用比较运算符输出结果,字典和字典不能够比较大小
cmp()
2高级数据类型切片
列表,元组,字符串都能够使用切片方法,取出其中的一部分。通过指定索引值来限定范围,实现切片操作。
字典用键来索引,不支持切片操作。
3运算符+,*,in
1.加号+:列表、元组、字符串、进行合并操作,字典不支持加号操作
2.列表的+号操作与extend方法的功能类似,但是,+号会返回一个新的变量,extend会改变调用方法的变量
3.乘号*:重复列表,元组,字符串中的元素,字典不支持乘号操作。
4.in成员判断符:用来判断元素是否存在列表,元组,字符串,字典中。(对于字典只能判断它的key)
not in中间有空格)断用来判断元素是否不在列表,元组,字符串,字典中。(对于字典只能判断它的key)
4完整的for循环
语法格式:
for 变量 in 集合:循环体代码
else:没有通过break退出循环,循环结束后执行的代码
用else好奇怪啊,Python中不仅和if连用,还可以和for循环使用。循环体内使用break跳出循环,那else中额语句将不会被执行。
举一个例子:一个字典保存一个人的信息,多个人的信息保存在一个列表中。查找某个同学的信息,找到退出,没找到打印信息提示。
students=[{"name":"atu"},{"name":"xiaomei"}
]
find_name="zhangsan"
for stu_dict in students:print(stu_dict)if stu_dict["name"]==find_name:print("Find %s" %find_name)#找到之后没有必要继续往下遍历了,应该直接退出,提高效率break
else:#没有找到目标,统一输出提示信息print("sorry ,it can't find %s" % find_name)
print("end")
应用场景:大多是情况下,使用for 都不会配套else 这个关键字。else常用在嵌套数据的迭代搜索的情况下使用。搜索到满足的情况,直接退出循环;全部搜索完了没有搜到结果,就统一输出提示信息。