高級數據類型的公共方法
- 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常用在嵌套數據的迭代搜索的情況下使用。搜索到滿足的情況,直接退出循環;全部搜索完了沒有搜到結果,就統一輸出提示信息。