Python set集合方法詳解

"""
set()函數是個無序的去重集合,可以用來過濾重復元素
Python 提供了 2 種創建 set 集合的方法,分別是使用 {} 創建和使用 set() 函數將列表、元組等類型數據轉換為集合
"""# 空集合
s0 = set()           # 正確方式 → set()
# s = {} → 要創建空集合,只能使用 set() 函數實現。因為直接使用一對 {},Python 解釋器會將其視為一個空字典
print(s0)
# 從可迭代對象創建
s1 = set([1,2,2,3])  # 列表轉集合 → {1,2,3}
s2 = set("hello")    # 字符串轉集合 → {'h','e','l','o'}
s3 = frozenset([1,2,3])  # 不可變集合 → 無法修改元素
print(s1,s2,s3)# 添加元素
# 使用 add() 方法添加的元素,只能是數字、字符串、元組或者布爾類型(True 和 False)值,不能添加列表、字典、集合這類可變的數據
s = {1,2,3}
s.add(5)            # → {1,2,3,5}
s.add("abc")
s.add((4,5,6))
s.add(False)
print("s.add()", s)s.update([5,6,7])   # → {1,2,3,5,6,7}
print("s.update([5,6,7]) ", s)# 刪除元素
s.remove(7)         # → 刪除指定元素,不存在則報錯
print("s.remove(7) ", s)  # {1, 2, 3, 5, 6}
s.discard(100)      # 安全刪除,元素不存在不報錯
print("s.discard(100)", s) # {1, 2, 3, 5, 6}
x = s.pop()         # 隨機刪除一個元素并返回
print(" s.pop()", s, x)a = {1,'c',1,(1,2,3),'c'}
print(a)  #集合可以用來過濾重復元素# Python set集合做交集、并集、差集運算
# 交集 & 取兩集合公共的元素
# 并集    |  取兩集合全部的元素,過濾重復元素
# 差集   -   取前一個集合中,另一個集合沒有的元素
# 對稱差集 ^ 取集合 A 和 B 中不屬于 A&B 的元素A= set([1,2,3])B= set([3,4,5])
print("交集", A&B)  # 交集 {3}
print("并集", A|B)  # 并集 {1, 2, 3, 4, 5}
print("差集", A-B)  # 差集 {1, 2}
print("對稱差集", A^B) # 對稱差集 {1, 2, 4, 5}
print(type(A^B))my_list = {1, 2, 3, 4, 5}
last_element = my_list.pop()
print(last_element)  # 輸出:1
print(my_list)  # 輸出: [1, 2, 3, 4]

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/81035.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/81035.shtml
英文地址,請注明出處:http://en.pswp.cn/web/81035.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

各類Agent技術的發展現狀和核心痛點

AI Agent主要分類 Agent(智能體)技術是指具有自主感知、決策與執行能力的軟件系統,能夠在環境中完成特定任務。目前常見的Agent類型主要包括: - 基于大模型的智能體:以GPT-4等大型語言模型為核心,如AutoGP…

單片機-STM32部分:18、WiFi模組

飛書文檔https://x509p6c8to.feishu.cn/wiki/WFmqwImDViDUezkF7ercZuNDnve 一、WiFi模組應用 當設備需要連接網絡,實現遠程控制,狀態監控時,就需要添加通信模組,常見的通信模組WiFi模組、2G模組、4G模組等: 我們的板卡…

探索Qwen2ForCausalLM 架構上進行微調

簡述 試驗參考了mini_qwen 的開源實現 GitHub - qiufengqijun/mini_qwen: 這是一個從頭訓練大語言模型的項目,包括預訓練、微調和直接偏好優化,模型擁有1B參數,支持中英文。這是一個從頭訓練大語言模型的項目,包括預訓練、微調和…

hysAnalyser特色的TS流編輯、剪輯和轉存MP4功能說明

摘要 hysAnalyser 是一款特色的 MPEG-TS 數據分析工具,融合了常規TS文件的剪輯,轉存功能,可用于平常的視頻開發和測試。 本文詳細闡述了對MPEG-TS 流的節目ID,名稱,PID,時間戳,流類型&#xff…

前端[插件化]設計思想_Vue、React、Webpack、Vite、Element Plus、Ant Design

前端插件化設計思想旨在提升應用的可擴展性、可維護性和模塊化程度。這種思想不僅體現在框架(如 Vue、React)中,也廣泛應用于構建工具(如 Webpack、Vite)以及 UI 庫(如 Element Plus、Ant Design&#xff0…

2025年高防IP與游戲盾深度對比:如何選擇最佳防護方案?

2025年,隨著DDoS攻擊規模的指數級增長和混合攻擊的常態化,高防IP與游戲盾成為企業網絡安全的核心選擇。然而,兩者在功能定位、技術實現及適用場景上存在顯著差異。本文結合最新行業實踐與技術趨勢,全面解析兩者的優劣,…

日志根因分析:Elastic Observability 的異常檢測與日志分類功能

作者:來自 Elastic Bahubali Shetti Elastic Observability 不僅提供日志聚合、指標分析、APM 和分布式追蹤,Elastic 的機器學習能力還能幫助分析問題的根因,讓你將時間專注于最重要的任務。 隨著越來越多的應用程序遷移到云端,收…

Linux火墻管理及優化

網絡環境配置 使用3個新的虛擬機【配置好軟件倉庫和網絡的】 F1 192.168.150.133 NAT F2 192.168.150.134 192.168.10.20 NAT HOST-ONLY 網絡適配僅主機 F3 192.168.10.30 HOST-ONLY 網絡適配僅主機 1 ~]# hostnamectl hostname double1.timinglee.org 【更…

java配置webSocket、前端使用uniapp連接

一、這個管理系統是基于若依框架&#xff0c;配置webSocKet的maven依賴 <!--websocket--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId></dependency> 二、配…

基于Yolov8+PyQT的老人摔倒識別系統源碼

概述 ??基于Yolov8PyQT的老人摔倒識別系統??&#xff0c;該系統通過深度學習算法實時檢測人體姿態&#xff0c;精準識別站立、摔倒中等3種狀態&#xff0c;為家庭或養老機構提供及時預警功能。 主要內容 ??完整可運行代碼?? 項目采用Yolov8目標檢測框架結合PyQT5開發…

Oracle 創建外部表

找別人要一下數據&#xff0c;但是他發來一個 xxx.csv 文件&#xff0c;怎么辦&#xff1f; 1、使用視圖化工具導入 使用導入工具導入&#xff0c;如 DBeaver&#xff0c;右擊要導入的表&#xff0c;選擇導入數據。 選擇對應的 csv 文件&#xff0c;下一步就行了&#xff08;如…

【華為OD- B卷 01 - 傳遞悄悄話 100分(python、java、c、c++、js)】

【華為OD- B卷 01 - 傳遞悄悄話 100分(python、java、c、c++、js)】 題目 給定一個二叉樹,每個節點上站一個人,節點數字表示父節點到該節點傳遞悄悄話需要花費的時間。 初始時,根節點所在位置的人有一個悄悄話想要傳遞給其他人,求二叉樹所有節點上的人都接收到悄悄話花…

房貸利率計算前端小程序

利率計算前端小程序 視圖效果展示如下&#xff1a; 在這里插入代碼片 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0&qu…

自制操作系統day8 (鼠標數據取得、通往32位模式之路、A20GATE、切換到保護模式、控制寄存器cr0-cr4以及cr8、ALIGNB)

day8 鼠標數據取得方法 fifo8_init(&mousefifo, 128, mousebuf); for (;;) { io_cli(); if (fifo8_status(&keyfifo) fifo8_status(&mousefifo) 0) { io_stihlt(); } else { if (fifo8_status(&keyfifo) ! 0) { i fifo8_get(&keyfifo); io_sti(); spr…

IP大科普:住宅IP、機房IP、原生IP、雙ISP

不同類型的IP在跨境電商、廣告營銷、網絡技術、數據收集等領域都有廣泛應用&#xff0c;比如常見的住宅IP、機房IP、原生IP、雙ISP等&#xff0c;這些IP分別都有什么特點&#xff0c;發揮什么作用&#xff0c;適合哪些業務場景&#xff1f; 一、IP類型及其作用 1.住宅IP 住宅…

Elasticsearch面試題帶答案

Elasticsearch面試題帶答案 Elasticsearch面試題及答案【最新版】Elasticsearch高級面試題大全(2025版),發現網上很多Elasticsearch面試題及答案整理都沒有答案,所以花了很長時間搜集,本套Elasticsearch面試題大全,Elasticsearch面試題大匯總,有大量經典的Elasticsearch面…

Eigen與OpenCV矩陣操作全面對比:最大值、最小值、平均值

功能對比總表 功能Eigen 方法OpenCV 方法主要區別最大值mat.maxCoeff(&row, &col)cv::minMaxLoc(mat, NULL, &maxVal, NULL, &maxLoc)Eigen需要分開調用&#xff0c;OpenCV一次獲取最小值mat.minCoeff(&row, &col)cv::minMaxLoc(mat, &minVal, NU…

echarts之雙折線漸變圖

vue3echarts實現雙折線漸變圖 echarts中文官網&#xff1a;https://echarts.apache.org/examples/zh/index.html 效果圖展示&#xff1a; 整體代碼如下&#xff1a; <template><div id"lineChart" style"width:100%;height:400px;"></di…

MD編輯器推薦【Obsidian】含下載安裝和實用教程

為什么推薦 Obsidian &#xff1f; 免費 &#xff08;Typora 開始收費了&#xff09;Typora 實現的功能&#xff0c;它都有&#xff01;代碼塊可一鍵復制 文件目錄支持文件夾 大綱支持折疊、搜索 特色功能 – 白板 特色功能 – 關系圖譜 下載 https://pan.baidu.com/s/1I1fSly…

vue 鼠標經過時顯示/隱藏其他元素

方式一&#xff1a; 使用純css方式 , :hover是可以控制其他元素 1、 當兩個元素是父子關系 <div class"all_" ><div> <i class"iconfont icon-sun sun"></i></div> </div> .all_{} .sun {display: none; /* 默認…