集合是一種可變的無序的容器.
創(chuàng)新互聯(lián)基于分布式IDC數(shù)據(jù)中心構(gòu)建的平臺為眾多戶提供成都托管服務(wù)器 四川大帶寬租用 成都機(jī)柜租用 成都服務(wù)器租用。x = {1,2,3} #第一種方法,使用{}
x = set([2,4,5]) #第二種方法,使用強(qiáng)制類型轉(zhuǎn)換
類似數(shù)學(xué)中的集合的確定性,集合描述得很清楚,不存在不能判斷一個(gè)元素是否在一個(gè)集合中,具體來說就是in或not in運(yùn)算符不會得不到確定的結(jié)果.
因此不能通過下標(biāo)訪問.
subscriptable就是可以通過下標(biāo)訪問的.這里提示"not subscriptable".
沒有重復(fù)元素.
包括==,!=,判斷子集,真子集,超集,真超集,交集與并集,差集,對稱差分.
可以通過add,remove改變集合本身.
另外有不可變集合frozenset:
字典是一種可變的無序容器,每個(gè)值都有自己對應(yīng)的鍵,是一個(gè)映射結(jié)構(gòu),本質(zhì)上是一個(gè)以鍵為元素的集合.
使用{},鍵與值用:分隔,鍵值對用逗號分隔.
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()的參數(shù)被調(diào)用,不斷返回下一個(gè)值.
可以直接作用與循環(huán)語句的對象,對于for循環(huán)是in后的對象.判斷一個(gè)對象是否是可迭代對象可以利用isinstance()與Iterable.
from collections import Iterable
isinstance([1,2,3],Iterable)
使用iter():
生成器是一個(gè)函數(shù),不過相比起普通函數(shù),返回的是迭代器.
生成器用的不是return,而是yield,另外生成器有惰性計(jì)算的特性,調(diào)用生成器時(shí)不會立即執(zhí)行它,會在調(diào)用每個(gè)元素時(shí)才進(jìn)行計(jì)算.
def gen():
x = range(-1,8)
for i in x:
yield i+2
for x in gen():
print(x,end = ' ')
print()
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。