python中的集合

目錄

初識集合

集合的含義

集合的作用

集合的使用場景

集合的定義

集合的常用操作

元素的增加

函數add()

元素的刪除

函數remove()

函數clear()

函數pop()

集合的遍歷

for循環

while循環


初識集合

集合的含義

在pyrhon中,集合是一種內置的數據結構,用于存儲無序、唯一的元素。

無序:在集合中的元素沒有固定順序。

唯一:集合中的元素不重復。

集合的作用

去重從列表中移除重復的元素
查找效率高

判斷指定元素是否存在

集合運算交集、并集等操作
關系判斷判斷集合包含關系

集合的使用場景

列表去重、判斷元素是否存在、集合運算、判斷子集及超集。

集合的定義

由{}包裹的元素組成的序列,且元素可以是不同的數據類型。

語法結構:

集合名 = {元素1,元素2,元素3,......}

#以下都是集合
my_set = {'ele1','ele2','ele3'}
my_set2 = {1,2,3}
my_set3 = {True,True,False}
my_set4 = {'ele1',4,False}

集合的常用操作

清晨,陽光灑落在村莊的青石小路上,你,小小勇者,背起劍與行囊,準備出發完成今日的冒險任務——收集魔晶碎片。據說魔晶碎片分布在森林、湖邊和山洞之中,只有集齊五種不同的碎片,才能解鎖古代祭壇的大門。

元素的增加

函數add()

功能:向集合中添加一個新元素,如果元素已存在,則不會重復添加,不能添加列表、字典。

語法結構:集合.add(元素)

第一站:森林深處——收集開始

森林中迷霧繚繞,勇者擊敗了幾只樹靈,撿到了兩枚發著綠光的碎片---翠綠魔晶。你興奮地拿出背包里的碎片收集袋,卻發現無論再怎么撿“翠綠魔晶”,袋子里也只有一塊,可能是其中一塊魔晶將另一塊吸收了;接著,你又從一棵大樹下的藤蔓中發現了另一塊“幽紫魔晶”:

bag = set() #集合內的元素不重復
bag.add("翠綠魔晶")
bag.add("翠綠魔晶")  # 重復添加也不會重復存在
bag.add("幽紫魔晶")
print(bag)

對代碼進行運行測試:

元素的刪除

函數remove()

功能:刪除集合中的指定元素,若元素不存在,會報錯KeyError。

語法結構:集合.remove(元素)

第二站:湖邊陷阱——移除錯誤碎片

湖邊,你見一塊晶石泛著藍光,以為是“冰藍魔晶”,便將其收集起來,但剛準備離開,巡湖的老獵人提醒你:“那不是魔晶,是魚人的水晶誘餌,帶著它會吸引危險。”你連忙取出袋子,小心翼翼地將其移除:

bag = {'幽紫魔晶', '翠綠魔晶'}
bag.add("湖邊碎片")
print(f"撿起后背包內的魔晶碎片有{bag}")
bag.remove("湖邊碎片")
print(f"扔掉后背包內的魔晶碎片有{bag}")

對代碼進行運行測試:

函數clear()

功能:移除集合中所有元素,使集合變為空集合。

語法結構:集合.clear()

第三站:山洞探險——清空重來

你繼續前往山洞,卻在一場地震中摔了跤,袋子掉進泥水中。碎片沾滿污泥、失去了能量。

你嘆了口氣,只能清空收集袋,準備重新收集。“這次我得更小心了。”你拍拍身上的泥,繼續前行。

bag = {'幽紫魔晶', '翠綠魔晶'}
bag.clear()
print(f"摔跤后你手中的魔晶碎片還剩:{bag}")

對代碼進行運行測試:

函數pop()

功能:由于集合是無序的,pop()函數會隨機刪除并返回集合中的某個元素,若集合為空,會報錯KeyError。

語法結構:集合.pop()

第四站:魔晶之心——火焰魔晶的試煉

在經歷了數次挑戰之后,你終于集齊了四塊較為常見的魔晶碎片:翠綠魔晶、幽紫魔晶、風之魔晶和光明魔晶。剩下的唯一缺少的碎片便是火焰魔晶,隱藏在烈焰之島的火焰試煉中。在烈焰島上,你必須通過重重火焰挑戰才能接近魔晶。最后,你面對火焰漩渦中的火焰魔晶,火焰之神告訴他:要想獲得火焰魔晶,就必須放棄一塊已有的魔晶。你毫不猶豫地選擇獻祭自己最珍貴的一塊魔晶:

bag = {"翠綠魔晶","幽紫魔晶","風之魔晶","光明魔晶"}
print(f'被你獻祭的魔晶碎片是:{bag.pop()}')

對代碼進行運行測試:

集合的遍歷

for循環

第五站:地穴迷宮——整理收集情況

你在地穴中一路奮戰,終于又重新收集到了五種魔晶碎片。你點燃火把,開始一個個檢查,邊走邊數,確認每一塊魔晶的種類和顏色,以免遺漏。

bag = {"翠綠魔晶","幽紫魔晶","光明魔晶","火焰魔晶","風之魔晶"}
for mojing in bag:print(f"收集到:{mojing}")

對代碼進行運行測試:

while循環

第五站:古代祭壇——等待封印解除

最后,你抵達神秘的古代祭壇,將碎片一一放入祭壇的五個凹槽,但祭壇沒有立刻反應。你決定重新檢查一下每個碎片的位置,確保沒有錯漏,于是開始逐個核對:

bag = {"翠綠魔晶","幽紫魔晶","光明魔晶","火焰魔晶","風之魔晶"}
bag_list = list(bag)
index = 0
while index < len(bag_list):print(f"第{index + 1}塊碎片是:{bag_list[index]}")index += 1

對代碼進行運行測試:

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

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

相關文章

如何將普通HTTP API接口改造為MCP服務器

在現代微服務架構中&#xff0c;MCP&#xff08;Mesh Configuration Protocol&#xff09; 作為高效配置分發協議&#xff0c;正逐漸替代傳統HTTP API。本文將手把手教你如何將普通HTTP API升級為高性能MCP服務器。 為什么需要MCP&#xff1f; 傳統HTTP API在配置分發場景存在…

數據結構第8問:什么是樹?

樹 【本節僅描述樹的定義、術語以及相關性質】 定義 樹是由若干個結點組成的有限集合。具有如下特征&#xff1a; 有且僅有一個根結點&#xff1b;除根結點外&#xff0c;每個其它結點有且僅有一個直接的父結點&#xff1b;除根結點外&#xff0c;每個結點可以有零個或者多個子…

PyTorch RNN 名字分類器

PyTorch RNN 名字分類器詳解 使用PyTorch實現的字符級RNN&#xff08;循環神經網絡&#xff09;項目&#xff0c;用于根據人名預測其所屬的語言/國家。該模型通過學習不同語言名字的字符模式&#xff0c;夠識別名字的語言起源。 環境設置 import torch import string import un…

面向對象之類方法,成員變量和局部變量

1.類的方法必須包含幾個部分&#xff1f;2.成員變量和局部變量類的方法必須包含哪幾個部分&#xff1f;.方法名&#xff1a;用于標識方法的名稱&#xff0c;遵循標識符命名規則&#xff0c;通常采用駝峰命名法。返回值類型&#xff1a;指定方法返回的數據類型。如果方法不返回任…

古法筆記 | 通過查表進行ASCII字符編碼轉換

ASCII字符集是比較早期的一種字符編碼&#xff0c;只能表示英文字符&#xff0c;最多能表示128個字符。 字符集規定了每個字符和二進制數之間的對應關系&#xff0c;可以通過查表完成二進制數到字符的轉換ASCII字符占用的存儲空間是定長的1字節 ASCII字符的官方碼點表見下圖&…

Linux C實現單生產者多消費者環形緩沖區

使用C11里的原子變量實現&#xff0c;沒有用互斥鎖&#xff0c;效率更高。ring_buffer.h:/*** file ring_buffer.h* author tl* brief 單生產者多消費者環形緩沖區&#xff0c;每條數據被所有消費者讀后才釋放。讀線程安全&#xff0c;寫僅單線程。* version* date 2025-08-06*…

復雜場景識別率↑31%!陌訊多模態融合算法在智慧環衛的實戰解析

摘要&#xff1a;針對邊緣計算優化的垃圾堆放識別場景&#xff0c;本文解析了基于動態決策機制的視覺算法如何提升復雜環境的魯棒性。實測數據顯示在遮擋/光照干擾下&#xff0c;mAP0.5較基線提升28.3%&#xff0c;誤報率降低至行業1/5水平。一、行業痛點&#xff1a;智慧環衛的…

MyBatis-Plus Service 接口:如何在 MyBatis-Plus 中實現業務邏輯層??

全文目錄&#xff1a;開篇語前言1. MyBatis-Plus 的 IService 接口1.1 基本使用示例&#xff1a;創建實體類 User 和 UserService1.2 創建 IService 接口1.3 創建 ServiceImpl 類1.4 典型的數據庫操作方法1.4.1 save()&#xff1a;保存數據1.4.2 remove()&#xff1a;刪除數據1…

[激光原理與應用-168]:光源 - 常見光源的分類、特性及應用場景的詳細解析,涵蓋技術原理、優缺點及典型應用領域

一、半導體光源1. LED光源&#xff08;發光二極管&#xff09;原理&#xff1a;通過半導體PN結的電子-空穴復合發光&#xff0c;波長由材料帶隙決定&#xff08;如GaN發藍光、AlGaInP發紅光&#xff09;。特性&#xff1a;優點&#xff1a;壽命長&#xff08;>5萬小時&#…

Metronic v.7.1.7企業級Web應用前端框架全攻略

本文還有配套的精品資源&#xff0c;點擊獲取 簡介&#xff1a;Metronic是一款專注于構建響應式、高性能企業級Web應用的前端開發框架。最新版本v.7.1.7引入了多種功能和優化&#xff0c;以增強開發效率和用戶體驗。詳細介紹了其核心特性&#xff0c;包括響應式設計、多種模…

鴻蒙開發--Notification Kit(用戶通知服務)

通知是手機系統中很重要的信息展示方式&#xff0c;通知不僅可以展示文字&#xff0c;也可以展示圖片&#xff0c;甚至可以將組件加到通知中&#xff0c;只要用戶不清空&#xff0c;通知的信息可以永久保留在狀態欄上通知的介紹 通知 Notification通知&#xff0c;即在一個應用…

鴻蒙 - 分享功能

文章目錄一、背景二、app發起分享1. 通過分享面板進行分享2. 使用其他應用打開二、處理分享的內容1. module.json5 配置可接收分享2. 解析分享的數據一、背景 在App開發中&#xff0c;分享是常用功能&#xff0c;這里介紹鴻蒙開發中&#xff0c;其他應用分享到自己的app中&…

【Agent 系統設計】基于大語言模型的智能Agent系統

一篇阿里博文引發的思考和探索。基于大語言模型的智能Agent系統 1. 系統核心思想 核心思想是構建一個以大語言模型&#xff08;LLM&#xff09;為“大腦”的智能代理&#xff08;Agent&#xff09;&#xff0c;旨在解決將人類的自然語言指令高效、準確地轉化為機器可執行的自動…

企業級Web框架性能對決:Spring Boot、Django、Node.js與ASP.NET深度測評

企業級Web應用的開發效率與運行性能直接關系到業務的成敗。本文通過構建標準化的待辦事項&#xff08;Todo&#xff09;應用&#xff0c;對四大主流框架——Spring Boot、Django、Node.js和ASP.NET展開全面的性能較量。我們將從底層架構特性出發&#xff0c;結合實測數據與數據…

為什么 `source ~/.bashrc` 在 systemd 或 crontab 中不生效

摘要&#xff1a;你是否遇到過這樣的問題&#xff1a;在終端里運行腳本能正常工作&#xff0c;但用 systemd 或 crontab 自動啟動時卻報錯“命令找不到”、“模塊導入失敗”&#xff1f; 本文將揭示一個深藏在 ~/.bashrc 中的“陷阱”&#xff1a;非交互式 shell 會直接退出&am…

Linux 磁盤中的文件

1.磁盤結構 Linux中的文件加載到內存上之前是放到哪的&#xff1f; 放在磁盤上的文件——>訪問文件&#xff0c;打開它——>找到這個文件——>路徑 但文件是怎樣存儲在磁盤上的 1.1物理結構磁盤可以理解為上百億個小磁鐵&#xff08;如N為1&#xff0c;S為0&#xff0…

【方法】Git本地倉庫的文件夾不顯示紅色感嘆號、綠色對號等圖標

文章目錄前言開始操作winr&#xff0c;輸入regedit&#xff0c;打開注冊表重啟資源管理器前言 這個綠色對號圖標表示本地倉庫和遠程的GitHub倉庫內容保持一致&#xff0c;紅色則是相反咯&#xff0c;給你們瞅一下。 首先這兩個東西你一定要安裝配置好了&#xff0c;安裝順序不…

量化交易與主觀交易:哪種方式更勝一籌?

文章概要 在投資的世界里&#xff0c;量化交易和主觀交易如同冰與火&#xff0c;各自擁有獨特的優勢與挑戰。作為一名投資者&#xff0c;了解這兩種交易方式的差異和各自的優缺點至關重要。本文將從決策依據、執行方式、風險管理等方面深入探討量化交易的精確性與主觀交易的靈活…

【JS】扁平樹數據轉為樹結構

扁平數據轉為最終效果[{"label":"疼遜有限公司","code":"1212","disabled":false,"parentId":"none","children":[{"label":"財務部","code":"34343&quo…

數據結構4-棧、隊列

摘要&#xff1a;本文系統介紹了棧和隊列兩種基礎數據結構。棧采用"先進后出"原則&#xff0c;分為順序棧和鏈式棧&#xff0c;詳細說明了壓棧、出棧等基本操作及其實現方法。隊列遵循"先進先出"規則&#xff0c;同樣分為順序隊列和鏈式隊列&#xff0c;重…