使用 iter()
函數從集合中取得迭代器。
使用 next()
函數從迭代器取得元素。
如果集合為空,請指定預設值。
my_set = {'jiyik.com'} element = next(iter(my_set), None) print(element) # ????️ jiyik.com
我們使用 iter()
函數從集合中取得迭代器物件。
next()
函數從提供的迭代器傳回下一個項目。
此函數可以傳遞一個預設值作為第二個參數。
如果迭代器耗盡或為空,則傳回預設值。
如果迭代器耗盡或為空且未提供預設值,則會引發
StopIteration
例外。
我們使用 None 作為預設值,但我們可以使用適合我們的用例的任何其他值。
my_set = set() element = next(iter(my_set), None) print(element) # ????️ None
此集合為空,因此傳回預設值 None。
或者,我們可以使用元組解包。
使用元組拆包來取得單一成員集中的唯一元素,例如(element,) = my_set
。元組解包語法會將元素的值指派給變數。
my_set = {'jiyik.com'} (element,) = my_set print(element) # ????️ jiyik.com
請注意
,我們在變數名稱後使用了尾隨逗號。
右側可迭代物件的第一個元素被指派給左邊的變數。
(element,) = ['a'] print(element) # ????️ 'a'
或者,我們可以使用 list()
類別。
要取得單一成員集中的唯一元素:
使用list ()
類別將集合物件轉換為清單。
存取索引 0 處的清單。
my_set = {'jiyik.com'} my_list = list(my_set) element = my_list[0] print(element) # ????️ jiyik.com
集合物件不可訂閱(不能透過索引存取),但清單可以。
清單中的第一個元素的索引為 0,因此我們要做的就是存取索引 0 處的清單元素以取得該集合的唯一成員。
或者,我們可以使用 for 迴圈。
要取得單一成員集中的唯一元素:
使用 for 迴圈遍歷集合。
將元素指派給變數。
my_set = {'jiyik.com'} element = None for element in my_set: break print(element) # ????️ jiyik.com
我們使用
for
迴圈遍歷集合並將其唯一元素指派給變數。我們也使用break
語句退出for
迴圈。break
語句跳出最內層的 for 或 while 迴圈。
如果我們的集合保證只包含一個元素,則沒有必要這樣做。
或者,我們可以使用 set.pop()
方法。
使用set.pop()
方法取得單一成員集合中的唯一元素,例如element = my_set.pop()
。 set.pop()
方法將從集合物件中移除並傳回唯一的元素。
my_set = {'jiyik.com'} element = my_set.pop() print(element) # ????️ jiyik.com print(my_set) # ????️ set()
set.pop
方法從集合中刪除並傳回任意元素。
如果集合為空,方法將引發
KeyError
例外。
如果我們需要處理 KeyError
異常,請使用 try/except
語句。
my_set = set() try: element = my_set.pop() print(element) print(my_set) except KeyError: # ????️ this runs print('The set object is empty')
set
物件為空,因此set.pop()
方法引發KeyError
異常,然後由 except 區塊處理。
只有在我們需要從集合中擷取和刪除元素時才使用 set.pop()
方法。
以上是怎麼在Python中取得單一成員集合中的唯一元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!