Python元组定义及集合的使用

 更新时间:2022年07月15日 15:12:06   作者:爪哇斗罗  
这篇文章主要介绍了Python元组定义及集合的使用,元组是Python中的一个内置的数据结构,它是一个不可变的序列,所谓的不可变序列就是不可以进行增删改的操作

一. 元组

元组是Python中的一个内置的数据结构,它是一个不可变的序列,所谓的不可变序列就是不可以进行增删改的操作。

1.1 元组的创建

元组的创建可以使用两种方式,第一种使用( ),第二种使用内置的函数tuple()进行创建。如果元组中的元素只有一个则需要加上逗号。

# author: 爪哇斗罗(javaDouLuo)
# date: 2022/7/13 21:06
 
# 元组的创建
tuple01 = (1, 2, 3, 4, 5,)
# <class 'tuple'>
print(type(tuple01))
# (1, 2, 3, 4, 5)
print(tuple01)
# 第二种方式
tuple02 = tuple((1, 2, 3, 4, 5))
# (1, 2, 3, 4, 5)
print(tuple02)
# 必须加逗号,不然是str类型
tuple03 = ('1',)
# <class 'tuple'>
print(type(tuple03))

1.2 元组的遍历

元组遍历使用for in的方式进行遍历:

# 元组的创建
tuple01 = (1, 2, 3, 4, 5,)
 
# 1
# 2
# 3
# 4
# 5
for item in tuple01:
    print(item)

二. 集合

2.1 集合的创建

集合也是Python中的一个内置数据结构,是可变序列的。集合的定义是使用{ }进行定义的。与字典的区别就是没有value。

除了上面使用{ }声明集合外,还可以使用内置函数set()进行创建。此外,集合中的元素不可重复。

# 使用{}创建
set01 = {1, 32, 3, 4, 5, 5, "12"}
# {32, 1, 3, 4, 5, '12'}
print(set01)
 
# 使用set()创建
set02 = set(range(0,5))
# {0, 1, 2, 3, 4}
print(set02)

2.2 集合的新增

集合新增使用有两种方式,分别是add()与update()方法。主要区别就是前者一次添加一个元素,后者一次可以添加多个元素。

# 使用{}创建
set01 = {1, 32, 3, 4, 5, 5, "12"}
set01.add(100)
# {32, 1, '12', 3, 4, 5, 100}
print(set01)
set01.update({1,12,4})
# {32, 1, 3, 4, 5, 100, 12, '12'}
print(set01)

2.3 集合的删除

删除集合,主要提供了四种不同的方法,如下:

  • remove(): 删除指定元素,元素不存在抛异常
  • discard(): 删除指定元素,元素不存在不抛异常
  • pop(): 一次只删除一个任意元素
  • clear(): 清空集合
# 使用{}创建
set01 = {1, 32, 3, 4, 5, 5, "12"}
 
# 删除1
set01.remove(1);
# 元素不存在抛异常:KeyError: 24
# set01.remove(24);
# {32, 3, 4, 5, '12'}
print(set01)
# 删除任意一个元素
set01.pop();
# {3, 4, 5, '12'}
print(set01)
set01.discard(24)
# 元素不存在不抛出异常 {3, 4, 5, '12'} 
print(set01)
set01.clear()
# 清空集合 set()
print(set01)

2.4 集合的关系

集合的关系有三种,分别是两集合是否相等,是否有交集与子集。

1. 两集合是否相等

两集合是否相等,使用==或者!=进行判断。

s1 = {1, 2, 3, 4, 5}
s2 = {5, 4, 3, 2, 1}
s3 = {5, 4, 3, 2, 1, 0}
 
# True
print(s1 == s2)
# False
print(s1 == s3)
# True
print(s2 != s3)

2. 子集

当B集合中的所有元素都在A集合中存在,则B是A的子集,通过issubset()判断。

s1 = {1, 2, 3, 4, 5}
s2 = {5, 4, 3, 2, 1}
s3 = {5, 4, 3, 2, 1, 0}
 
# True
print(s1.issubset(s3))

3. 交集

当B集合中的部分元素在A集合中存在,则B与A存在交集,通过issubset()判断是否没有交集。

s1 = {1, 2, 3, 4, 5}
s2 = {5, 4, 3, 2, 1, 4}
s3 = {5, 4, 3, 0}
 
# False s2与s3有交集
print(s2.isdisjoint(s3))

到此这篇关于Python元组定义及集合的使用的文章就介绍到这了,更多相关Python元组定义内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Matplotlib实战之堆叠面积图绘制详解

    Matplotlib实战之堆叠面积图绘制详解

    堆叠面积图和面积图都是用于展示数据随时间变化趋势的统计图表,但它们的特点有所不同,堆叠面积图既能看到各数据系列的走势,又能看到整体的规模,下面我们就来看看如何绘制堆叠面积图吧
    2023-08-08
  • Python中变量的作用域详解

    Python中变量的作用域详解

    大家好,本篇文章主要讲的是Python中变量的作用域详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • python 判断字符串当中是否包含字符(str.contain)

    python 判断字符串当中是否包含字符(str.contain)

    这篇文章主要介绍了python 判断字符串当中是否包含字符(str.contain),文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • Python从入门到精通之Redis操作详解

    Python从入门到精通之Redis操作详解

    Redis(Remote Dictionary Server)是一种高性能的开源内存数据库,它支持多种数据结构,本文主要为大家介绍了Python中操作Redis数据库的方法,需要的可以参考下
    2023-08-08
  • python基础--除法(/,//,%)的应用说明

    python基础--除法(/,//,%)的应用说明

    这篇文章主要介绍了python基础--除法(/,//,%)的应用说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 深度剖析使用python抓取网页正文的源码

    深度剖析使用python抓取网页正文的源码

    平时打开一个网页,除了文章的正文内容,通常会有一大堆的导航,广告和其他方面的信息。本文的目的,在于说明如何从一个网页中提取出文章的正文内容,而过渡掉其他无关的的信息。
    2014-06-06
  • Tensorflow 多线程设置方式

    Tensorflow 多线程设置方式

    今天小编就为大家分享一篇Tensorflow 多线程设置方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 使用Pytorch如何完成多分类问题

    使用Pytorch如何完成多分类问题

    这篇文章主要介绍了使用Pytorch如何完成多分类问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • python 抓取知乎指定回答下视频的方法

    python 抓取知乎指定回答下视频的方法

    这篇文章主要介绍了python 抓取知乎指定回答下视频的方法,文中讲解非常详细,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • python通过socket实现多个连接并实现ssh功能详解

    python通过socket实现多个连接并实现ssh功能详解

    这篇文章主要介绍了python通过socket实现多个连接并实现ssh功能详解,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11

最新评论