当前位置: 首页 > wzjs >正文

移动网站与pc网站关键词提取工具

移动网站与pc网站,关键词提取工具,马鞍山什么房产网站做的好,淘宝上的网站建设为什么便宜Python 数据类型 - 集合(set) 1. 集合简介 集合(set)是Python中的一种无序、可变、不重复元素的容器数据类型。集合的主要用途: 快速成员检测(判断元素是否存在)去除重复项执行数学集合运算(并集、交集、差集等) 2.…

Python 数据类型 - 集合(set)

在这里插入图片描述

1. 集合简介

集合(set)是Python中的一种无序、可变、不重复元素的容器数据类型。集合的主要用途:

  • 快速成员检测(判断元素是否存在)
  • 去除重复项
  • 执行数学集合运算(并集、交集、差集等)

2. 创建集合

2.1 使用花括号

fruits = {'apple', 'banana', 'orange'}  # 注意:空{}创建的是字典,不是集合

2.2 使用set()构造函数

numbers = set([1, 2, 3, 4])  # 从列表创建
chars = set("hello")         # 从字符串创建 → {'h', 'e', 'l', 'o'}(自动去重)
empty_set = set()            # 创建空集合的正确方式

3. 集合基本操作

3.1 添加元素

s = {1, 2}
s.add(3)        # {1, 2, 3}
s.update([4,5]) # {1, 2, 3, 4, 5} 添加多个元素

3.2 删除元素

s = {1, 2, 3, 4}
s.remove(3)     # {1, 2, 4} (元素不存在会报KeyError)
s.discard(5)    # 安全删除(元素不存在不会报错)
s.pop()         # 随机删除并返回一个元素
s.clear()       # 清空集合

3.3 成员检测

colors = {'red', 'blue', 'green'}
'red' in colors   # True
'yellow' not in colors  # True

4. 集合运算

4.1 并集 (| 或 union())

a = {1, 2}; b = {2, 3}
a | b          # {1, 2, 3}
a.union(b)     # 同上

4.2 交集 (& 或 intersection())

a & b              # {2}
a.intersection(b)  # 同上

4.3 差集 (- 或 difference())

a - b              # {1}
a.difference(b)    # 同上

4.4 对称差集 (^ 或 symmetric_difference())

a ^ b                      # {1, 3}
a.symmetric_difference(b)  # 同上

5. 集合方法速查

方法描述
add()添加单个元素
update()添加多个元素
remove()删除指定元素(不存在则报错)
discard()删除指定元素(不存在不报错)
pop()随机删除并返回一个元素
clear()清空集合
copy()浅拷贝集合
union()返回并集
intersection()返回交集
difference()返回差集
symmetric_difference()返回对称差集
issubset()判断是否为子集
issuperset()判断是否为超集
isdisjoint()判断是否无交集

6. 集合特性

  1. 无序性:集合元素没有固定顺序

    print({1,2,3} == {3,2,1})  # True
    
  2. 元素唯一性:自动去除重复

    set([1,1,2,2,3])  # {1, 2, 3}
    
  3. 不可哈希元素:集合元素必须是不可变类型(不能包含列表、字典等可变类型)

7. 冻结集合(frozenset)

不可变的集合类型:

fs = frozenset([1,2,3])
# fs.add(4)  # 报错:frozenset不可修改

8. 实际应用示例

8.1 列表去重

lst = [1,2,2,3,4,4]
unique = list(set(lst))  # [1,2,3,4](顺序可能变化)

8.2 词频统计

words = ["apple", "banana", "apple", "orange"]
unique_words = set(words)  # {'apple', 'banana', 'orange'}

8.3 权限系统

user_permissions = {'read', 'write'}
required_permissions = {'read', 'execute'}
if user_permissions & required_permissions == required_permissions:print("权限足够")

9. 性能特点

  • 成员检测:O(1) 时间复杂度(比列表的O(n)快)
  • 元素添加/删除:平均O(1)时间复杂度
  • 不适合需要维护元素顺序的场景
http://www.dtcms.com/wzjs/295929.html

相关文章:

  • 余江县建设局网站百度推广客服电话
  • 自做网站告白如何弄百度风云榜游戏
  • 最好的做网站抖音宣传推广方案
  • 域名注册和网站建设电子商务网站推广策略
  • 网站建设算什么费用seo优化排名技术百度教程
  • 做网站需要钱吗武汉刚刚发生的新闻
  • 海南微信网站制作平台今日重大新闻头条财经
  • 网站和软件是怎么做的百度官网认证免费
  • 科技助手和平精英seo关键词排名优化软件怎么选
  • 手机域名注册被骗宁波优化网站厂家
  • 一级a做爰片免费网站神马电影北京seo技术交流
  • 佛山哪个做网站的好西安seo按天收费
  • 网站开发的费用申请seo顾问张智伟
  • 用dw做的网站怎么放到网上青岛seo整站优化招商电话
  • 做风水起名网站推广网站外包
  • 官网的网站建设公司常德论坛网站
  • 哈尔滨红军街67号海南seo代理加盟供应商
  • 为诈骗团伙做网站天津网站建设技术外包
  • 珠海做网站最好的公司做个网站需要多少钱
  • 网站空间域名维护协议中国十大营销策划机构
  • 石家庄做手机网站建设专业网站推广优化
  • 双控机制建设网站app推广一手单
  • 网站建设是管理费用的哪项费用百度极速版免费下载
  • 绵阳营销型网站建设seo研究中心论坛
  • Javaweb做视频网站独立站平台选哪个好
  • 嘉兴本地推广网站sem优化师是做什么的
  • 哪个网站做超链接网络营销常见术语
  • 龙华网站开发指数型基金
  • 国内免费无版权图片素材网站北京刚刚传来特大消息
  • 设计师个人网站模板优化培训学校