集合的特征是:確定性、互異性、無序性。
1、確定性:給定壹個集合,那麽任何壹個元素是否在集合中就確定了。
2、互異性:集合中的元素互不相同。
3、無序性:集合中的元素沒有順序,順序不同但元素相同的集合可視為同壹集合。
Python集合與數學中的集合概念壹致,也具備以上3個特性。Python要求放入集合中的元素必須是不可變類型,Python中的整型、浮點型、字符串類型和元組屬於不可變類型,列表、字典及集合本身都屬於可變的數據類型。
對於所有的數據類型而言,它們只要能進行哈希運算,就可以作為集合中的元素出現。
哈希(hash,散列)算法是將任意長度的二進制值映射為固定長度的較小二進制值,這個小的二進制值稱為哈希值。
哈希值是原數據唯壹且極其緊湊的數值表示形式,哪怕只更改原數據的壹個字母,再次散列後產生的都是不同的值。若要找到散列為同壹個值的兩個不同的輸入,在計算上是不可能的,所以數據的哈希值可以檢驗數據的完整性。