Python小白教学系列 | 集合

女爷i 2022-02-24 11:12 469阅读 0赞

集合概述

Python中的集合和数学中的集合类似,可以保存不重复的元素。它有可变集合(set)和不可变集合(frozenset)两种。
本文讲解的是set集合(无序可变序列)

一、集合的创建

格式:

  1. 集合名称 = { '元素1', '元素2', '元素x'}

示例:

  1. name = { 1, 'http', ('ftp', 'ssh')} #元素可以是数字,字符串,元组
  2. print(name)
  3. 运行结果:
  4. { 1, 'http', ('ftp', 'ssh')}

使用set()函数创建

格式:

  1. 集合名称 = set(iteration)
  2. #iteration表示要转换为集合的可迭代对象,可以是列表,元组,range对象等
  3. #也可以是字符串,返回的集合将是包含全部不重复字符的集合。

示例:

  1. setname1 = set('时间会证明一切!') #字符串
  2. setname2 = set([3.5, 'http']) #列表
  3. setname3 = set(('好好活着', '比什么都重要!')) #元组
  4. setname4 = set(range(1, 10, 2)) #range
  5. print(setname1)
  6. print(setname2)
  7. print(setname3)
  8. print(setname4)
  9. 运行结果:
  10. { '证', '!', '一', '间', '会', '切', '明', '时'}
  11. { 3.5, 'http'}
  12. { '好好活着', '比什么都重要!'}
  13. { 1, 3, 5, 7, 9}

在创建空集合时,只能用set函数来创建

  1. setname = set() #空集合

二、集合的添加和删除

1、向集合中添加元素

格式:

  1. 集合名.add(元素)
  2. #元素可以为字符串,数字,布尔值,不能为列表,元组等可迭代对象

示例:

  1. setname = set([1, 'http', 'ftp', 'ssh'])
  2. print(setname)
  3. setname.add('add')
  4. print(setname)
  5. 运行结果:
  6. { 1, 'http', 'ssh', 'ftp'}
  7. { 'add', 1, 'http', 'ssh', 'ftp'}

2、从集合中删除元素

a)删除指定一个元素

remove()

  1. setname = set([1, 'http', 'ftp', 'ssh'])
  2. setname.remove(1)
  3. print('使用remove()删除指定元素后:',setname)
  4. 运行结果:
  5. 使用remove()删除指定元素后: { 'http', 'ftp', 'ssh'}

b)随机删除一个元素

pop()

  1. setname = set([1, 'http', 'ftp', 'ssh'])
  2. setname.pop()
  3. print('使用pop()删除指定元素后:',setname)
  4. 运行结果:
  5. 使用pop()删除指定元素后: { 1, 'ssh', 'http'} #'ftp'被删了

c)清空集合

clear.()

  1. setname = set([1, 'http', 'ftp', 'ssh'])
  2. setname.clear()
  3. print('使用clear()清空集合后:',setname)
  4. 运行结果:
  5. 使用clear()清空集合后: set()

4)删除集合

  1. del 集合名

三、集合的交集、并集、差集运算

1)运算符号

  1. 交集 &
  2. 并集 |
  3. 差集 -

2)示例

  1. setname1 = set([1, 'http', 'ftp', 'ssh'])
  2. setname2 = set([1, 2, 'ssh'])
  3. print('交集运算:', setname1 & setname2)
  4. print('并集运算:', setname1 | setname2)
  5. print('差集运算:', setname1 - setname2)
  6. 运算结果:
  7. 交集运算: { 1, 'ssh'}
  8. 并集运算: { 1, 'ftp', 2, 'ssh', 'http'}
  9. 差集运算: { 'ftp', 'http'}

发表评论

表情:
评论列表 (有 0 条评论,469人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Python教学系列 | 集合

    集合概述 Python中的集合和数学中的集合类似,可以保存不重复的元素。它有可变集合(set)和不可变集合(frozenset)两种。 本文讲解的是set集合(无序可

    相关 Python教学系列| 类和对象 详解

    前言 类是面向对象编程的核心概念,面向对象程序设计是在面向过程程序设计的基础上发展而来的,它比面对过程编程具有更强的灵活性和扩展性。在此提醒初学者:想要在编程这条路上走的