集合

s=set('chen xi')
s1=['cx','ee','cx']
s2=set(s1)#set为集合
print(s2,type(s2))
s=list(s2)
print(s,type(s))

 测试

D:\python\python.exe D:/untitled/dir/for.py
{'cx', 'ee'} <class 'set'>
['cx', 'ee'] <class 'list'> Process finished with exit code 0

  集合的创建

s=set("chenxi cx bhbhbm km")
print(s)

  测试;帮我们去重set

D:\python\python.exe D:/untitled/dir/for.py
{'h', 'k', 'c', 'x', ' ', 'n', 'e', 'm', 'b', 'i'}

   注意set必须是不可哈希的值

li = [[1,2],3,'huhu']
s= set(li)
print(s)

  测试报错

D:\python\python.exe D:/untitled/dir/for.py
Traceback (most recent call last):
File "D:/untitled/dir/for.py", line 371, in <module>
s= set(li)
TypeError: unhashable type: 'list' Process finished with exit code 1

  判断集合是否包含指定的字符串

li = [1,2,3,'huhu']
s= set(li)
# print(s)
print(2 in s)
print(4 in s )
print('h' in s)

  测试

D:\python\python.exe D:/untitled/dir/for.py
True
False
False Process finished with exit code 0

  集合更新之添加元素

li = [1,2,3,'huhu']
s= set(li)
# print(s)
# print(2 in s)
# print(4 in s )
# print('h' in s)
# print('huhu' in s)
print(s)
s.add('u')
print(s)

  测试

D:\python\python.exe D:/untitled/dir/for.py
{1, 2, 3, 'huhu'}
{1, 2, 3, 'huhu', 'u'}

  集合更新之添加多个元素

li = [1,2,3,'huhu']
s= set(li)
print(s)
s.add('u')
print(s)
s.update('asdfgh')
print(s)

  测试

D:\python\python.exe D:/untitled/dir/for.py
{1, 2, 3, 'huhu'}
{1, 2, 3, 'huhu', 'u'}
{1, 2, 3, 'huhu', 'g', 'h', 'd', 'a', 'u', 'f', 's'}

  更新数字字母

li = [1,2,3,'huhu']
s= set(li)
print(s)
s.add('u')
print(s)
s.update('asdfgh')
print(s)
s.update([12,'huhbjkjkjkjkjk'])
print(s)

  测试

D:\python\python.exe D:/untitled/dir/for.py
{1, 2, 3, 'huhu'}
{1, 2, 3, 'huhu', 'u'}
{1, 2, 3, 'f', 'huhu', 's', 'a', 'd', 'g', 'u', 'h'}
{1, 2, 3, 'f', 'huhu', 'huhbjkjkjkjkjk', 's', 12, 'a', 'd', 'g', 'u', 'h'}

集合删除指定元素操作

li = [1,2,3,'huhu']
s= set(li)
print(s)
s.add('u')
print(s)
s.update('asdfgh')
print(s)
s.update([12,'huhbjkjkjkjkjk'])
print(s)
s.remove(12)
print(s)

  测试

D:\python\python.exe D:/untitled/dir/for.py
{1, 2, 3, 'huhu'}
{1, 2, 3, 'huhu', 'u'}
{1, 2, 3, 'huhu', 'a', 'd', 's', 'h', 'u', 'g', 'f'}
{1, 2, 3, 'huhu', 'a', 'd', 's', 'h', 'u', 'g', 12, 'f', 'huhbjkjkjkjkjk'}
{1, 2, 3, 'huhu', 'a', 'd', 's', 'h', 'u', 'g', 'f', 'huhbjkjkjkjkjk'}

  集合之删除随意元素

li = [1,2,3,'huhu']
s= set(li)
print(s)
s.add('u')
print(s)
s.update('asdfgh')
print(s)
s.update([12,'huhbjkjkjkjkjk'])
print(s)
s.remove(12)
print(s)
s.pop()
print(s)

  测试

D:\python\python.exe D:/untitled/dir/for.py
{1, 2, 3, 'huhu'}
{1, 2, 3, 'u', 'huhu'}
{1, 2, 3, 'a', 'h', 'd', 'u', 'f', 'huhu', 'g', 's'}
{1, 2, 3, 'a', 'h', 'd', 12, 'u', 'f', 'huhu', 'huhbjkjkjkjkjk', 'g', 's'}
{1, 2, 3, 'a', 'h', 'd', 'u', 'f', 'huhu', 'huhbjkjkjkjkjk', 'g', 's'}
{2, 3, 'a', 'h', 'd', 'u', 'f', 'huhu', 'huhbjkjkjkjkjk', 'g', 's'}

  清空集合

li = [1,2,3,'huhu']
s= set(li)
print(s)
s.add('u')
print(s)
s.update('asdfgh')
print(s)
s.update([12,'huhbjkjkjkjkjk'])
print(s)
s.remove(12)
print(s)
s.pop()
print(s)
s.clear()
print(s)

  测试

D:\python\python.exe D:/untitled/dir/for.py
{1, 2, 3, 'huhu'}
{1, 2, 3, 'huhu', 'u'}
{1, 2, 3, 's', 'f', 'a', 'd', 'g', 'huhu', 'h', 'u'}
{1, 2, 3, 's', 'f', 'a', 'huhbjkjkjkjkjk', 'd', 'g', 12, 'huhu', 'h', 'u'}
{1, 2, 3, 's', 'f', 'a', 'huhbjkjkjkjkjk', 'd', 'g', 'huhu', 'h', 'u'}
{2, 3, 's', 'f', 'a', 'huhbjkjkjkjkjk', 'd', 'g', 'huhu', 'h', 'u'}
set() Process finished with exit code 0

 删除集合

 

li = [1,2,3,'huhu']
s= set(li)
# print(s)
# print(2 in s)
# print(4 in s )
# print('h' in s)
# print('huhu' in s)
print(s)
s.add('u')
print(s)
s.update('asdfgh')
print(s)
s.update([12,'huhbjkjkjkjkjk'])
print(s)
s.remove(12)
print(s)
s.pop()
print(s)
s.clear()
print(s)
del s
print(s)

  测试

D:\python\python.exe D:/untitled/dir/for.py
Traceback (most recent call last):
{'huhu', 1, 2, 3}
File "D:/untitled/dir/for.py", line 391, in <module>
{1, 2, 3, 'u', 'huhu'}
print(s)
{'s', 1, 2, 3, 'a', 'd', 'h', 'u', 'huhu', 'f', 'g'}
NameError: name 's' is not defined
{'s', 1, 2, 3, 'a', 'd', 12, 'h', 'u', 'huhu', 'huhbjkjkjkjkjk', 'f', 'g'}
{'s', 1, 2, 3, 'a', 'd', 'h', 'u', 'huhu', 'huhbjkjkjkjkjk', 'f', 'g'}
{1, 2, 3, 'a', 'd', 'h', 'u', 'huhu', 'huhbjkjkjkjkjk', 'f', 'g'}
set() Process finished with exit code 1

  比较两个集合是否相同

print(set('chenxi')==set('cheeennnxxxi'))

  测试

D:\python\python.exe D:/untitled/dir/for.py
True Process finished with exit code 0

  判断第一个集合是否被第二个集合包含;如果完全一样打印

print(set('chenxi')==set('cheeennnxxxi'))
print(set('cx')<set('chenxigg'))

  测试

D:\python\python.exe D:/untitled/dir/for.py
True
True

  判断第一个集合是否被第二个集合包含;如果完全一样打印

print(set('chenxi')==set('cheeennnxxxi'))
print(set('cx')<set('chenxigg'))
print(set('cx')<set('cx'))

  测试

D:\python\python.exe D:/untitled/dir/for.py
True
True
False Process finished with exit code 0

  取两个都有的元素

print(set('yfgfggcgcffxdfx sd f') & set('hhghghg v'))

  测试

{' ', 'g'}

  取并集,取两个集合都包括的。只有有一个集合包含的就打印

print(set('yfgfggcgcffxdfx sd f') | set('hhghghg v'))

  测试

D:\python\python.exe D:/untitled/dir/for.py
{' ', 'g'}
{' ', 'h', 'd', 's', 'g', 'y', 'f', 'c', 'x', 'v'}

  取交集的另一给个方法

s= set('yfgfggcgcffxdfx sd f')
v= set('hhghghg v')
print(s.intersection(v))

  测试

D:\python\python.exe D:/untitled/dir/for.py
{' ', 'g'} Process finished with exit code 0

  取并集

s= set('yfgfggcgcffxdfx sd f')
v= set('hhghghg v')
print(s.union(v))

  测试

D:\python\python.exe D:/untitled/dir/for.py
{'g', 'f', 'c', 'y', 'h', ' ', 'v', 'd', 's', 'x'} Process finished with exit code 0

  取集合里的差集,s里有的v里没有的

s= set('yfgfggcgcffxdfx sd f')
v= set('hhghghg v')
print(s.difference(v))

  测试

D:\python\python.exe D:/untitled/dir/for.py
{'s', 'x', 'c', 'y', 'f', 'd'} Process finished with exit code 0

  取集合里的差集,v里有的s里没有

s= set('yfgfggcgcffxdfx sd f')
v= set('hhghghg v')
print(v.difference(s))

  测试

D:\python\python.exe D:/untitled/dir/for.py
{'h', 'v'} Process finished with exit code 0

  

  

 

python 基础之集合的更多相关文章

  1. python基础数据类型--集合(set)

    python基础数据类型--集合(set) 集合是一个数学概念由一个或多个确定的元素所构成的整体叫做集合 集合中的三个特征 1.确定性(元素必须死可hash) 2.互异性(去重) 3.无序性(集合中的 ...

  2. Python基础(三)——集合、有序 无序列表、函数、文件操作

    1.Set集合 class set(object): """ set() -> new empty set object set(iterable) -> n ...

  3. python 基础 set 集合类型补充

    为啥今天又重提这个数据类型呢?平时用的少,等要用起来的时候才发现,自己对这块啥都不知道了,so,今天就把这块再梳理一下咯. 一.set集合,是一个无序且不重复的元素集合.这一点是非常重要的. 二.集合 ...

  4. python基础08_set集合

    关于前几次课的回顾: #!/usr/bin/env python # coding:utf-8 ## 字符串 数字 列表 元组 字典 ## 可变:列表 字典 ## 不可变:字符串, 数字, 元组 na ...

  5. python基础七--集合

    12.221.昨日内容回顾 小数据池: int:-5--256 str:1.不能有特殊字符 2.*int不能超过20 编码:所能看到的最小构成单位叫字符 ascii : 8位 1字节 表示1个字符 u ...

  6. Python基础入门-集合

    今天给大家分享的是python中集合(set)的概念,集合这个词其实和高中学的数学集合的概念很相近,或者作为初学者你就可以把它理解为数学当中的集合.在python中集合(set)是由一个个键组成的,但 ...

  7. python基础——数字&集合&布尔类型

    Python的核心数据类型 内置对象 对象类型 例子 数字 123,3.1415,3+4j,Decimal(小数),Fraction(分数) 字符串 'dodo',"guido's" ...

  8. Python基础-set集合操作

    set集合,是一个无序且不重复的元素集合.定义方式类似字典使用{}创建 目前我们学过的数据类型: 1.字符串(str),2.整型(int),3.浮点型(float),4,列表(list) 5.元组(t ...

  9. Python基础-week03 集合 , 文件操作 和 函数详解

    一.集合及其运算 1.集合的概念 集合是一个无序的,不重复的数据组合,它的主要作用如下 *去重,把一个列表变成集合,就自动去重了 *关系测试,测试两组数据之前的交集.并集.差集.子集.父级.对称差集, ...

  10. Python基础操作-集合

    在Python set是基本数据类型的一种集合类型,它有可变集合(set())和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法 ...

随机推荐

  1. mybatis--一对多关联

    今天来介绍mybatis的一对多关联 (1)首先创建数据库mybatisonetomany,并创建数据库表post和user,并向其中插入一定的数据: create database mybatiso ...

  2. 列表与数组 Perl入门第三章

    列表List 是标量的有序集合.数组array则是存储列表的变量.数组/列表的每个元素element都是单独的标量变量,拥有独立的标量值. 1. 数组: 访问数组中的元素: $fred[0]=&quo ...

  3. Mac配置内网穿透

    闲语: Java开发过程中,往往会对接第三方,而在对接过程中,双方间使用的最多的"通讯"方式就是异步通知.可是异步通知过程中,只能通知到外网地址,可是在调试过程我们都是在本地进行- ...

  4. .net core IIS 发布

    发布时注意事项: 1.本机安装.net core SDK 2.启动项目预加载 3.应用池配置为 无托管代码 4.设置应用池-->高级设置-->启动模式为:AlwaysRunning 5.在 ...

  5. 加壳&脱壳 - 前言(4.17更新)

    0x00 闲谈 最近打算学习学习加壳脱壳相关的知识,大致会有以下几个部分 1.upx壳的加壳原理及脱壳方法 --UPX压缩壳的工作原理 --脱upx壳--初试--单步追踪 -- 0x01 参考链接 1 ...

  6. 题解 CF546B Soldier and Badges

    CF546B Soldier and Badges 简单的贪心qwq 排个序,如果当前数与之前的数相重,已经用过,则加到一个之前没有用过的数 #include<cstdio> #inclu ...

  7. Django+Celery+redis kombu.exceptions.EncodeError:Object of type is not JSON serializable报错

    在本文中例子中遇到问题的各种开发版本如下: Python3.6.8 Django==2.2 celery==4.4.0 kombu==4.6.7 redis==3.3.0 大概的报错如下截图: 是在开 ...

  8. Tomcat 和 JVM 性能调优总结

    Tomcat性能调优: 找到Tomcat根目录下的conf目录,修改server.xml文件的内容.对于这部分的调优,我所了解到的就是无非设置一下Tomcat服务器的最大并发数和Tomcat初始化时创 ...

  9. springboot 框架 - helloword

    功能:浏览器发送hello请求,服务器接收请求并处理,返回hello word字符串 一.创建一个maven项目 二.在pom.xml文件中添加依赖导入springboot框架运行需要的依赖 < ...

  10. Kubernetes(k8s)完整安装教程

    Kubernetes(k8s)完整安装教程  2019-08-27 2.3k 记录 发表评论 目录 1 安装 1.1 安装 Docker 1.2 安装 VirtualBox 1.3 安装 kubect ...