Python元组定义及集合的使用
作者:爪哇斗罗 发布时间:2023-11-22 12:32:03
标签: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))
来源:https://blog.csdn.net/qq_41857955/article/details/125772549
0
投稿
猜你喜欢
- 在经过前面几个部分的操作之后,我们的网页已经图文并茂,具有相当的效果了,但是这对于网页来说还不够,为了网站中的众多网页能够成为一个有机的整体
- <?php interface js{ function ys($a,$b); } class Af implements js{ f
- myisam_max_[extra]_sort_file_size足够大delay_key_write减少io,提高写入性能bulk_ins
- 本文实例讲述了PHP设计模式之装饰器模式定义与用法。分享给大家供大家参考,具体如下:什么是装饰器模式作为一种结构型模式, 装饰器(Decor
- 1.文档对象模型(DOM)DOM是HTML和XML文档的编程基础,它定义了处理执行文档的途径。编程者可以使用DOM增加文档、定位文档结构、填
- 问题:有一个列表,每一个条目都是这篇文章的部分内容,类似这样:<div class="list">
- 即使是简单的脚本语言,应用良好的模式可以得到非常“优美”的代码和较高的效率。尤其是对于交互要求较高的B/S系统,非常有必要用设计模式来优化代
- 本文实例讲述了PHP MVC框架中类的自动加载机制。分享给大家供大家参考,具体如下:原文实现类的自动加载主要使用到了set_include_
- 《页面表达常用方式》是整个“web交互设计方法”中的一部分:设计师在设计页面时,应该在页面上建立许多视觉层次,引导用户的视觉焦点。把用户的注
- 如何在网页打开时显示“正在加载”之类的信息?代码及说明见下: <% Response.Buffer =
- 对于Dreamweaver这个广大用户早有听闻的网页编辑工具,除功能强大外,Dreamweaver一向被推崇为同类网页编辑软件中产生垃圾代码
- 两个例子package main import ( "fmt" "time")func Proces
- 1.环境配置:2.实现原理:Php使用扩展插件imagick进行图片处理,处理pdf时使用imagick去调用ghostscript3.安装
- Microsoft建立了一种既灵活又强大的安全管理机制,它能够对用户访问SQL Server服务器系统和数据库的安全进行全面地管理。按照本文
- 本文实例讲述了Zend Framework教程之资源(Resources)用法。分享给大家供大家参考,具体如下:Zend_Applicati
- 1:创建用户 create temporary tablespace user_temp tempfile 'D:\app\topw
- 因为写js经常需要用到访问样式,我们常用的做法是通过 DOM.style.XXX来读写样式信息的。可是DOM.style这种写法只能访问&l
- 打开php.ini,首先找到;;;;;;;;;;;;;;;;; file uploads ;;;;;;;;;;;;;;;;;区域,有影响文件
- 由于javascript是一种无类型语言,所以一个数组的元素可以具有任意的数据类型,同一个数组的不同元素可以具有不同的类型,数组的元素设置可
- 代码如下:<% FunctIon DownloadFIle(StrFIle) StrFIlename=StrFIle Response