溫馨提示×

python set函數(shù)支持哪些數(shù)據(jù)類型

小樊
81
2024-09-14 06:48:47
欄目: 編程語言

Python 的 set() 函數(shù)可以接受任何可迭代對象(如列表、元組、字符串等)作為輸入?yún)?shù),并將其轉(zhuǎn)換為集合。但是,集合中的元素必須是可哈希的(hashable),這意味著元素必須是不可變的(如整數(shù)、浮點數(shù)、字符串等)或者是可哈希的可變?nèi)萜鳎ㄈ?frozenset)。

以下是一些可以用作 set() 函數(shù)參數(shù)的數(shù)據(jù)類型示例:

  1. 列表(list)
my_set = set([1, 2, 3, 4])
  1. 元組(tuple)
my_set = set((1, 2, 3, 4))
  1. 字符串(str)
my_set = set("hello")
  1. 字典(dict)的鍵(keys)
my_dict = {"a": 1, "b": 2, "c": 3}
my_set = set(my_dict.keys())

需要注意的是,集合中的元素不能是可變的數(shù)據(jù)類型,如列表、字典和集合本身。因為這些數(shù)據(jù)類型的內(nèi)容可以在創(chuàng)建集合后進行更改,從而導(dǎo)致集合的不確定性。如果嘗試將這些數(shù)據(jù)類型作為集合元素,Python 會引發(fā) TypeError。

0