基础数据类型之集合

1.集合的定义

在{}内用逗号分开多个元素,多个元素满足以下三个条件:

1.集合元素必须是不可变类型
2.集合元素无序
3.集合内元素没有重复(打印出来会自动去重)

d = {} 默认是定义空字典

需要定义空集合,需要使用s = set()

2,集合的作用

(1)关系运算

# 如何取出这两个人共同的朋友呢?
friend1=['zhang','yang','liu','tao']
friend2=['zhang','yang','xiao','wang']
# 没有学集合之前可以可以采取for循环的方法,如下:
l=[]
for i in friend1:
    if i in friend2:
        l.append(i)
print(l)

集合中提供了一种更简单的方法,具体见4内置方法

(2)去重

3.类型转换

使用set()方法,将括号里的数据转为集合类型,set方法自动对传入的数据调用了for循环的方法,循环之后的数据必须满足集合元素的要求!!

4.内置方法

4.1关系运算

friend1={'zhang','yang','liu','tao'}
friend2={'zhang','yang','xiao','wang'}

1.取交集,取出两者共同的好友

res = friend1 & friend2
print(res)

2.取并集,取出所有的好友

res = friend1 | friend2
print(res)

3.取差集,取friend1独有的好友

res = friend1 - friend2
print(res)
# 留下谁独有的就用谁去减另一个

4.取对称差集,取friend1和friend2独有的好友

print(friend1 ^ friend2)

5.父子集,包含关系

s1={1,2,3}
s2={1,2}
print(s1>s2) # true,s1是s2的父亲

4.2去重

1.只能针对不可变类型去重

priny(set([1,1,1,2,3])) # 结果为{1,2,3}

2.无法保证原来的顺序

4.3 成员运算 in\not in

4.4 len长度方法

4.5 for循环集合取值

4.6其他内置方法

增删改查

# 1.删除集合中的元素discard方法
s={1,2,3}
s.discard(3) # 删除元素不存在不报错
s.remove(4) # 删除元素不存在报错
res = s.pop() #随机删一个并返回改删除值

# 2.更新集合
s.update({1,3,5,6}) # 原集合不存在的元素添加,存在的去重

# 3.添加一个元素
s.add(8)

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基础数据类型之集合 - Python技术站

(0)
上一篇 2023年4月2日
下一篇 2023年4月2日

相关文章

  • 一切皆对象和深浅拷贝

    1.元类 元类的来源是:python中一切皆对象。 1.1 什么是元类 元类就是用来实例化产生类的类 关系:元类—实例化—类(自定义的类)—实例化—-对象(obj) 1.2如何查看内置的元类 1.type是内置的元类2.我们用class关键字定义出来的所有类以及内置的类都是由内置的元类type实例化产生的 例如:在python中int、dic…

    2023年4月2日
    00
  • 实时展示用户上传的头像

    实时展示用户上传的头像 总体思路 “”” 1.首先需要给对应的上传头像input框绑定一个文本域变化事件 (当检测到用户对该文件框上传了头像就会触发一系列操作) 2.再生成一个文件阅读器对象 3.再获取用户上传的文件头像 4.把用户上传的文件头像交给文件阅读器对象FileReader读取 5.利用文件阅读器把读取的文件头像结果展示到前端页面 (修改img的s…

    Python开发 2023年4月2日
    00
  • 轮播图前端

    轮播图组件 <template> <div id=”banner”> <el-carousel height=”400px”> <!– 将banner_list循环–> <el-carousel-item v-for=”item in banner_list” :key=”item”> <…

    2023年4月2日
    00
  • 基础数据类型之字典

    1.字典的定义 使用{}定义字典,括号内用逗号分隔开多个key:value,其中value可以是任意类型,但是key必须是不可变类型且不能重复,是无序的! info=[ [‘name’,’zhang’], (‘age’,19) [‘gender’,’男’] ] d={} # 第一种方式定义 d=dict(x=1,y=2) #第二种,dict里面也可以穿一个i…

    Python开发 2023年4月2日
    00
  • git的介绍和使用

    git介绍 什么是git git是一种版本控制器 – 控制的对象是开发的项目代码 什么是版本控制器 完成 协同开发 项目,帮助程序员整合代码 i)帮助开发者合并开发的代码 ii)如果出现冲突代码的合并,会提示后提交合并代码的开发者,让其解决冲突 软件:SVN 、 GIT(都是同一个人的个人项目) github、gitee(两个采用git版本控制器管理代码的公…

    2023年4月2日
    00
  • 函数的递归

    1.函数的递归的定义 函数的递归调用:是函数嵌套调用的一种特殊形式 具体是指:在调用一个函数的过程中又直接或者间接的调用到本身,是一个死循环,最大递归是1000次,超出之后报错。 2.函数递归的调用 # 直接调本身 def f1(): print(‘是我还是我’) f1() f1() # 间接调用 def f1(): print(‘f1’) f2() def…

    Python开发 2023年4月2日
    00
  • 多道技术、同步异步和阻塞非阻塞

    前期需要储备的知识点 并发 看起来同时运行的就可以称之为并发,其实内部是做了0.1秒A,做了0.1秒B,交替进行运作,看起来像是一起运作的。 并行 真正意义上的同时执行 补充 1.并行肯定算是并发2.单核的计算机肯定不能实现并行,但是可以实现并发!!3.我们这里的单核是假设就是一个核,干活的就一个人,不考虑cpu里面的内核 1. 多道技术 1.1 什么是多道…

    2023年4月2日
    00
  • 登录功能

    思路分析 登录页面,我们还是采用ajax的方式提交用户数据 唯一需要学习的是如何制作图片验证码! 具体的登录页面效果图如下: 如何制作图片验证码 推导步骤1:在img标签的src属性里放上验证码的请求路径 补充1.img的src属性: 1.图片路径 2.url 3.图片的二进制数据 补充2:字体样式 我们计算机上之所以可以输出各种各样的字体样式,其内部其实对…

    2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部