• <del id="a8uas"></del>
    • 千鋒教育-做有情懷、有良心、有品質的職業教育機構

      400-811-9990
      手機站
      千鋒教育

      千鋒學習站 | 隨時隨地免費學

      千鋒教育

      掃一掃進入千鋒手機站

      領取全套視頻
      千鋒教育

      關注千鋒學習站小程序
      隨時隨地免費學習課程

      上海
      • 北京
      • 鄭州
      • 武漢
      • 成都
      • 西安
      • 沈陽
      • 廣州
      • 南京
      • 深圳
      • 大連
      • 青島
      • 杭州
      • 重慶
      當前位置:合肥千鋒IT培訓  >  技術干貨  >  python 中set

      python 中set

      來源:千鋒教育
      發布人:xqq
      時間: 2023-11-16 19:11:42

      Python 中的 Set

      Python 中的 Set 是一種無序且不重復的數據集合,它是由一個或多個元素組成的,每個元素都是唯一的。Set 可以用來進行集合運算,比如交集、并集、差集等等。Set 中的元素可以是任何可哈希的對象,例如數字、字符串、元組等等。

      使用 Set 可以很方便地進行去重操作,同時也可以用來判斷兩個集合之間是否有交集。Set 是一個非常實用的數據結構,在 Python 中被廣泛地應用于各種場景中。

      Set 的創建

      我們可以使用 set() 函數來創建一個空的 Set,也可以使用花括號 {} 來創建一個包含元素的 Set。

      `python

      # 創建一個空的 Set

      set1 = set()

      # 創建一個包含元素的 Set

      set2 = {1, 2, 3, 4, 5}

      
      Set 的操作
      Set 支持一系列的操作,包括添加元素、刪除元素、判斷元素是否存在等等。
      添加元素
      我們可以使用 add() 方法來向 Set 中添加一個元素,如果添加的元素已經存在于 Set 中,那么不會有任何效果。
      `python
      # 創建一個空的 Set
      set1 = set()
      # 向 Set 中添加元素
      set1.add(1)
      set1.add(2)
      set1.add(3)
      print(set1) # {1, 2, 3}
      

      刪除元素

      我們可以使用 remove() 方法來從 Set 中刪除一個元素,如果要刪除的元素不存在于 Set 中,會拋出 KeyError 異常。

      `python

      # 創建一個包含元素的 Set

      set2 = {1, 2, 3, 4, 5}

      # 從 Set 中刪除元素

      set2.remove(3)

      print(set2) # {1, 2, 4, 5}

      
      判斷元素是否存在
      我們可以使用 in 關鍵字來判斷一個元素是否存在于 Set 中。
      `python
      # 創建一個包含元素的 Set
      set2 = {1, 2, 3, 4, 5}
      # 判斷元素是否存在于 Set 中
      print(3 in set2) # True
      print(6 in set2) # False
      

      Set 的集合運算

      Set 支持一系列的集合運算,包括交集、并集、差集等等。

      交集

      我們可以使用 & 運算符或者 intersection() 方法來獲得兩個 Set 的交集。

      `python

      # 創建兩個包含元素的 Set

      set3 = {1, 2, 3, 4, 5}

      set4 = {4, 5, 6, 7, 8}

      # 獲得兩個 Set 的交集

      print(set3 & set4) # {4, 5}

      print(set3.intersection(set4)) # {4, 5}

      
      并集
      我們可以使用 | 運算符或者 union() 方法來獲得兩個 Set 的并集。
      `python
      # 創建兩個包含元素的 Set
      set3 = {1, 2, 3, 4, 5}
      set4 = {4, 5, 6, 7, 8}
      # 獲得兩個 Set 的并集
      print(set3 | set4) # {1, 2, 3, 4, 5, 6, 7, 8}
      print(set3.union(set4)) # {1, 2, 3, 4, 5, 6, 7, 8}
      

      差集

      我們可以使用 - 運算符或者 difference() 方法來獲得兩個 Set 的差集。

      `python

      # 創建兩個包含元素的 Set

      set3 = {1, 2, 3, 4, 5}

      set4 = {4, 5, 6, 7, 8}

      # 獲得兩個 Set 的差集

      print(set3 - set4) # {1, 2, 3}

      print(set3.difference(set4)) # {1, 2, 3}

      
      擴展問答
      1. Set 和 List 的區別是什么?
      Set 和 List 都是 Python 中常用的數據結構,它們之間的區別主要有以下幾點:
      - Set 是無序的,而 List 是有序的。
      - Set 中的元素是不重復的,而 List 中的元素可以重復。
      - Set 支持一系列的集合運算,比如交集、并集、差集等等,而 List 不支持這些操作。
      2. Set 中的元素可以是任何類型嗎?
      Set 中的元素可以是任何可哈希的對象,包括數字、字符串、元組等等。Set 中的元素必須是不可變的,因為 Set 是基于哈希表實現的,如果元素是可變的,那么在修改元素的值時可能會破壞哈希表的結構。
      3. Set 是否支持切片操作?
      Set 不支持切片操作,因為它是無序的。如果需要使用切片操作,可以先將 Set 轉換為 List,然后再進行切片操作。
      `python
      # 創建一個包含元素的 Set
      set5 = {1, 2, 3, 4, 5}
      # 將 Set 轉換為 List,并進行切片操作
      list5 = list(set5)
      print(list5[1:3]) # [2, 3]
      

      4. Set 中的元素是否可以修改?

      Set 中的元素必須是不可變的,因此無法直接修改 Set 中的元素。如果需要修改元素的值,可以先將元素從 Set 中刪除,然后再添加新的元素。

      `python

      # 創建一個包含元素的 Set

      set6 = {1, 2, 3, 4, 5}

      # 從 Set 中刪除元素,并添加新的元素

      set6.remove(3)

      set6.add(6)

      print(set6) # {1, 2, 4, 5, 6}

      Set 是 Python 中非常實用的數據結構,它可以用來進行去重操作、判斷兩個集合之間是否有交集等等。Set 支持一系列的集合運算,包括交集、并集、差集等等。在使用 Set 的時候,需要注意元素必須是不可變的,同時也需要注意 Set 是無序的。

      聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。

      猜你喜歡LIKE

      python中set的用法

      2023-11-16

      python中def怎么用

      2023-11-16

      pythonforiinrange作用

      2023-11-16

      最新文章NEW

      python中string函數的作用

      2023-11-16

      python中sort values

      2023-11-16

      python中.values和.values()的區別

      2023-11-16

      相關推薦HOT

      更多>>

      快速通道 更多>>

      最新開班信息 更多>>

      網友熱搜 更多>>