您好,登錄后才能下訂單哦!
集合是一種可變的無序的容器.
x = {1,2,3} #第一種方法,使用{}
x = set([2,4,5]) #第二種方法,使用強制類型轉換
類似數學中的集合的確定性,集合描述得很清楚,不存在不能判斷一個元素是否在一個集合中,具體來說就是in或not in運算符不會得不到確定的結果.
因此不能通過下標訪問.
subscriptable就是可以通過下標訪問的.這里提示"not subscriptable".
沒有重復元素.
包括==,!=,判斷子集,真子集,超集,真超集,交集與并集,差集,對稱差分.
可以通過add,remove改變集合本身.
另外有不可變集合frozenset:
字典是一種可變的無序容器,每個值都有自己對應的鍵,是一個映射結構,本質上是一個以鍵為元素的集合.
使用{},鍵與值用:分隔,鍵值對用逗號分隔.
x = {'aa':1,'bb':2,'cc':3}
def func(arg1,**arg2):
print(arg1)
print(arg2)
func('a',a=1,b=2,c=3,d=4)
迭代器可以作為next()的參數被調用,不斷返回下一個值.
可以直接作用與循環語句的對象,對于for循環是in后的對象.判斷一個對象是否是可迭代對象可以利用isinstance()與Iterable.
from collections import Iterable
isinstance([1,2,3],Iterable)
使用iter():
生成器是一個函數,不過相比起普通函數,返回的是迭代器.
生成器用的不是return,而是yield,另外生成器有惰性計算的特性,調用生成器時不會立即執行它,會在調用每個元素時才進行計算.
def gen():
x = range(-1,8)
for i in x:
yield i+2
for x in gen():
print(x,end = ' ')
print()
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。