摘要:集合在中,是基本數(shù)據(jù)類型的一種集合類型。數(shù)組是一組值,不包含重復(fù)元素。數(shù)組是可變的無(wú)序的有限的集合,其元素是唯一的不可變的。函數(shù),清空,集合仍存在,只不過(guò)為空集合。判斷集合是否為某集合的父集返回。
set 集合
set 數(shù)組是一組key值,不包含重復(fù)元素。
set 數(shù)組是可變的、無(wú)序的、有限的集合,其元素是唯一的、不可變的。
set 數(shù)組沒(méi)有(不支持)索引和切片操作。
set有可變集合(set)和不可變集合(frozenset)兩種,其中set:可以原地修改,或者說(shuō)是可變的,也可以說(shuō)是 unhashable(不可哈希)的。
frozenset:是一個(gè)被“凍結(jié)”的集合,不能原地修改,是 hashable(可哈希)的。
一、set的創(chuàng)建 (1)直接創(chuàng)建 方式:將所有項(xiàng)(元素)放在花括號(hào)“{}”內(nèi),以逗號(hào)“,”分隔。 集合元素:集合可以有任意數(shù)量的元素,它們可以是不同的類型(例如:數(shù)字、元組、字符串等)。但是,集合不能有可變?cè)兀ɡ纾毫斜怼⒓匣蜃值洌?/b>>>> a = {1,2,3,4,"a"} >>> type(a)(2)通過(guò)set()、frozenset()創(chuàng)建 python中,set類是在python的sets模塊中,不需要導(dǎo)入sets模塊可以直接創(chuàng)建集合。
>>>set("boy") set(["y", "b", "o"])(3)創(chuàng)建空的set集合
創(chuàng)建空集合比較特殊。
在 Python 中,空花括號(hào)“{}”用于創(chuàng)建空字典。要?jiǎng)?chuàng)建一個(gè)沒(méi)有任何元素的集合,使用set()函數(shù)(不要包含任何參數(shù))。
>>> a = set() >>> a set() >>> b = {} >>> type(a),type(b) (ps:創(chuàng)建set例子, )
in關(guān)鍵字,判斷某key是否在set中,并返回True or False。
>>> s = set([1,2,3,2,1,3,4,5]) >>> s {1, 2, 3, 4, 5}(2)add(key)
add()方法:添加元素到set中。可以重復(fù)添加,but沒(méi)有效果,因?yàn)閟et中元素唯一性,會(huì)過(guò)濾重復(fù)的元素。
>>> s.add(6) >>> s {1, 2, 3, 4, 5, 6}(3)update()
update():將參數(shù)添加到set中并返回一個(gè)set,自動(dòng)過(guò)濾重復(fù)元素。
update()方法既可以帶一個(gè)單參數(shù),也可以帶一個(gè)or多個(gè)set,就好像多次調(diào)用add()。
remove(key)、discard(key)刪除指定元素。
區(qū)別:其中remove()刪除不存在的key時(shí)會(huì)返回報(bào)錯(cuò),而discard()不會(huì)。
>>> a_set = {1,2,3,6,10,15,21,28,36,45} >>> a_set {1, 2, 3, 36, 6, 10, 45, 15, 21, 28} # 并不一定是按填寫的順序 >>> a_set.discard(10) >>> a_set {1, 2, 3, 36, 6, 45, 15, 21, 28} >>> a_set.remove(21) Traceback (most recent call last): File "(5)pop()", line 1, in KeyError: 21
pop()函數(shù)不需要帶任何參數(shù),將set中的第一個(gè)元素刪除。
>>> a_set.pop() 1 >>> a_set {2, 3, 36, 6, 45, 15, 28}(6)clear()
clear()函數(shù),清空set,集合仍存在,只不過(guò)為空集合。
>>> a_set.clear() >>> a_set set()(7)del 刪除一個(gè)元素
語(yǔ)法形式:del set_name
set可以看成數(shù)學(xué)意義上的無(wú)序、無(wú)重復(fù)元素的集合,因此,兩個(gè)set可以做數(shù)學(xué)意義上的交集、并集等操作。
交集:兩個(gè)set集合之間所有的元素,操作符號(hào)為“&”或者intersection()函數(shù);
并集:兩個(gè)set集合之間共有的元素,操作符號(hào)為“|”或者union()函數(shù);
差集:在a集合中但不在b集合中,方法為difference()函數(shù);
symmetric_difference():在a集合中不在b集合中 and 在b集合中不在a集合中。
>>> s1 =set([1,3,6]) >>> s & s1 # and {1, 3, 6} >>> s | s1 # or {1, 2, 3, 5, 6} >>> a_set = {1,2,3,4,5,6,7,8,9,0} >>> b_set = {1,2,3,4,5,11,12,13,14,15} >>> a_set.union(b_set) # 并集|,或者直接a_set | b_set {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15} >>> a_set.intersection(b_set) # 交集&,或者直接使用 a_set & b_set {1, 2, 3, 4, 5} >>> a_set.difference(b_set) # 差集,在a中但不在b中 {0, 6, 7, 8, 9} >>> a_set.symmetric_difference(b_set) #在a中不在b中 and 在b中不在a中 {0, 6, 7, 8, 9, 11, 12, 13, 14, 15}
issubset():判斷集合是否為某集合的子集,返回True or False。
issuperset():判斷集合是否為某集合的父集,返回True or False。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/42265.html
摘要:基礎(chǔ)數(shù)據(jù)類型版本分為余版本,目前同時(shí)發(fā)行。對(duì)中文支持較差,如果要在程序中使用中文字符或中文變量,則需要在源程序的第一行增加,當(dāng)然別忘了將源文件保存為字符集。運(yùn)算符左右兩邊都是布爾值,輸出結(jié)果也為 python 基礎(chǔ)數(shù)據(jù)類型 python版本分為2.0余3.0版本,目前同時(shí)發(fā)行。以后3.0版本將成為主流地址https://www.python.org/ 編輯器 自帶編輯器IDLE【可...
摘要:集合是中一種基本數(shù)據(jù)類型,它分為可變集合和不可變集合兩種。小于和大于意味著兩個(gè)集合在比較時(shí)不能相等。等于號(hào)允許非嚴(yán)格定義的子集和超集。函數(shù)的作用是判斷集合是否是集合的子集,如果是返回,否則返回。 集合set是Python中一種基本數(shù)據(jù)類型,它分為可變集合(set)和不可變集合(frozenset)兩種。類似于其他語(yǔ)言,集合是一個(gè)無(wú)序不重復(fù)元素集,包括創(chuàng)建集合set、向集合中添加元素、刪...
摘要:最簡(jiǎn)單的說(shuō)法,即是在最原始的集合論樸素集合論中的定義,集合就是一堆東西。若然是集合的元素,記作。這里對(duì)被數(shù)學(xué)家們稱為直觀的或樸素的集合論進(jìn)行一個(gè)簡(jiǎn)短而基本的介紹更詳細(xì)的分析可見(jiàn)樸素集合論。對(duì)集合進(jìn)行嚴(yán)格的公理推導(dǎo)可見(jiàn)公理化集合論。 回顧一下已經(jīng)了解的數(shù)據(jù)類型:int/str/bool/list/dict/tuple 還真的不少了. 不過(guò),python是一個(gè)發(fā)展的語(yǔ)言,沒(méi)準(zhǔn)以后還出別...
摘要:的基本數(shù)據(jù)類型中的變量不需要聲明。在里,只有一種整數(shù)類型,表示為長(zhǎng)整型,沒(méi)有中的。字符串的截取的語(yǔ)法格式如下變量頭下標(biāo)尾下標(biāo)索引值以為開(kāi)始值,為從末尾的開(kāi)始位置。列表列表是中使用最頻繁的數(shù)據(jù)類型。注意構(gòu)造包含或個(gè)元素的元組的特殊語(yǔ)法規(guī)則。 1、python3的基本數(shù)據(jù)類型 Python 中的變量不需要聲明。每個(gè)變量在使用前都必須賦值,變量賦值以后該變量才會(huì)被創(chuàng)建。在 Python 中,...
摘要:布爾值布爾值和布爾代數(shù)的表示完全一致,一個(gè)布爾值只有兩種值的數(shù)據(jù)類型可以通過(guò)內(nèi)置的函數(shù)查詢,例如還可以用來(lái)判斷和的區(qū)別在于不會(huì)認(rèn)為子類是一種父類類型。會(huì)認(rèn)為子類是一種父類類型?;竟δ苁沁M(jìn)行成員關(guān)系測(cè)試和刪除重復(fù)元素。 ...
閱讀 3364·2021-11-25 09:43
閱讀 2169·2021-09-22 10:02
閱讀 3485·2021-09-06 15:00
閱讀 2371·2019-08-30 15:56
閱讀 2421·2019-08-30 15:54
閱讀 3295·2019-08-30 14:14
閱讀 2317·2019-08-29 17:25
閱讀 2986·2019-08-29 17:16