Python基礎入門 集合(set)

2021-09-18 03:39:22 字數 1904 閱讀 7192

1. 是否為序列型別:即該資料的元素是否能夠索引.其中序列型別的包括str/list/tuple;

2. 是否可以原處修改:即該資料的元素是否能夠原處修改(特別提醒看官,這裡說的是原處修改問題,有的資料裡面說str不能修改,也是指原處修改問題.為了避免誤解,特別強調了原處).能夠原處修改的list/dict(特別說明,dict的鍵必須是不可修改的,dict的值可原處修改)

用{}定義,其中元素沒有序列,元素不能重複

繼承了list特點,可以原處修改

>>> s1.add([1,34.5])          #此處必須加"    ",否則報錯

traceback (most recent call last):

file "", line 1, in

typeerror: unhashable type: 'list'

>>> s1.add("[1,34.5]")

>>> s1

>>> s1.add("(1,34.5)")

>>> s1

s1.update(s2)

>>> s1

>>> s1.update(s2)

>>> s1

>>> s1.pop()

'y'>>> s1.pop()

't'>>> s1.pop("google")

traceback (most recent call last):

file "", line 1, in

typeerror: pop() takes no arguments (1 given)

set.pop()是從set中任意選乙個元素,刪除並將這個值返回.但是,不能指定刪除某個元素.報錯資訊中就告訴我們了,pop()不能有引數.

>>> s1.remove("google")

>>> s1

>>> s1.remove("abs")

>>> s1

set.remove(obj)中的obj,必須是set中的元素,否則就報錯

跟remove(obj)類似的還有乙個discard(obj):

>>> s1.discard("h")

>>> s1

>>> s1.discard("n")

>>> s1

與help(set.remove)的資訊對比,看看有什麼不同.discard(obj)中的obj如果是set中的元素,就刪除,如果不是,就什麼也不做

set.clear():刪除所有元素

>>> s3

>>> s3.clear()

>>> s3

set()

>>> s3

set()

>>> bool(s3)

false

>>> f_set = frozenset("python")

>>> f

f_set      finally:    for        from       

filter(    float(      format(    frozenset( 

>>> f_set

frozenset()

>>> f_set.add("abc")

traceback (most recent call last):

file "", line 1, in

attributeerror: 'frozenset' object has no attribute 'add'

Python基礎入門(十一) 集合set

1 什麼是set 1 與dict 字典 區別 dict的作用是建立一組 key 和一組 value 的對映關係,dict的key是不能重複的。set 持有一系列元素,這一點和 list 很像,但是set的元素沒有重複,而且是無序的,這點和 dict 的 key很像。2 建立 set 的方式 呼叫 s...

python基礎 set集合

set集合是乙個無序且不重複的元素集合 1.set的建立 2種方式 se se set 11,22,33 呼叫的set 的 init 方法進行建立 2.set的常用方法 1.add se se.add 44 print se 因為是無序的,所以執行的結果會不一樣,但是 44確實被增加到了原 set集...

python基礎 集合set

二 集合常用函式 三 集合的新增元素 四 集合的刪除元素 五 集合的複製元素 集合和列表非常相似 不同點 1.集合中只能儲存不可變物件 2.集合中儲存的物件是無序 不是按照元素的插入順序儲存 3.集合中不能出現重複的元素 重複的元素會自動過濾掉 s s typeerror unhashable ty...