一、集合(set)

1、定义:不同的元素组成,无序排列的,可哈希的值(存放不可变类型:数字、字符串、元组) 

s={1,2,'ww',3,4,5,6,7,8,'ee'}
print (type(s))
print (s)
a=set('ehdjdjjdjfnsdjbfsdjnjksbdjhb')
print (a)
<class 'set'>
{1, 2, 3, 'ww', 4, 5, 6, 7, 8, 'ee'}
{'f', 'k', 'd', 'j', 'e', 's', 'b', 'h', 'n'} 2、集合内置方法
(1)#add    添加
a=set(['里','sb'])
a.add('dddd大傻逼')
a.add('3')
a.add(3)
print (a)
{3, 'sb', '3', 'dddd大傻逼', '里'}
#clear  清空
print (a.clear(),'ww')
# 返回: None
#copy   复制
v=a.copy()
print (v)
#返回:{3, 'sb', '里', '3', 'dddd大傻逼'}
#remove 指定删除(删除不存在的,会报错)
a.remove('3')
print (a)
#返回: {'里', 'dddd大傻逼', 'sb'}
#discard 指定删除(删除不存在的,不会报错)
a.discard('33333333')
print (a)
python=['ww','ee','gg','ee','ere']
linux=['ss','dd','gg','ww']
#集合可以去重,得到的结果是无序的
ps=set(python)
print (ps)
#返回:{'gg', 'ww', 'ere', 'ee'}
#intersection  求交集
ps=set(python)
ls=set(linux)
print (ps,ls)
print (ps.intersection(ls))
print (ps&ls)
#返回:{'ww', 'ere', 'gg', 'ee'} {'ww', 'ss', 'gg', 'dd'}
# {'ww', 'gg'}
# {'ww', 'gg'}
# union  求并集
ps=set(python)
ls=set(linux)
print (ps,ls)
print (ps.union(ls))
print (ps|ls)
#返回:{'ww', 'ere', 'ee', 'gg'} {'sb', 'gg', 'ww', 'dd', 'ss'}
# {'ere', 'sb', 'ee', 'gg', 'ww', 'dd', 'ss'}
# {'ere', 'sb', 'ee', 'gg', 'ww', 'dd', 'ss'}
# # union求差集
ps=set(python)
ls=set(linux)
print (ps-ls)
print (ls-ps)
print (ps.difference(ls))
print (ls.difference(ps))
#:返回:{'ere', 'ee'}
{'ss', 'dd', 'sb'}
{'ere', 'ee'}
{'ss', 'dd', 'sb'}
#交叉补集
ps=set(python)
ls=set(linux)
print (ps.symmetric_difference(ls))
print (ps^ls)
#返回:{'sb', 'dd', 'ee', 'ss', 'ere'}
{'sb', 'dd', 'ee', 'ss', 'ere'}
#如果两个集合没有交集,结果为none,则返回true,有交集则返回False
s1={1,2}
s2={3,4}
print (s1.isdisjoint(s2))
#返回:True
#s1是s2的子集 结果返回true ,s1不是s2的子集 结果返回False
s1={1,2}
s2={1,2,3,4}
print (s1.issubset(s2))
print (s2.issubset(s1))
# 返回:True
False
s1={1,2}
s2={1,2,3,4}
#s1是s2的父集 结果返回true ,s1不是s2的父集 结果返回False
print (s1.issuperset(s2))
print (s2.issuperset(s1))
#返回:False
   True
#update 更新,可以更新多个值,而add只能添加一个
s1={1,2}
s2={2,3,4}
s1.update(s2)
s1.update(('22',333),[33333])
print (s1)
#返回:{1, 2, 3, 4, 33333, '22', 333}
#frozenset  不可变集合
s3=frozenset('eeee')
print (s3)

python—004的更多相关文章

  1. Selenium with Python 004 - 页面元素操作

    毫无疑问,首先需要导入webdriver from selenium import webdriver 清除文本 driver.find_element_by_id('kw').clear() 文本输 ...

  2. Learning Python 004 基础的数据类型和变量

    Python 基础的数据类型和变量 数据类型 整数 Python可以处理任意大小的整数,当然包括负整数. Python表示十六进制也用0x前缀. 浮点数 1.23x10^9和12.3x10^8是完全相 ...

  3. leetcode python 004

    ##  已知l1,l2均为升序数组,##  在两数组l1,l2中寻找第n位数,##  两数组中位数中,前者大于后者,说明后者中位数以下的成员必定在真正中位数之下##  可以将其剔除,剔除a个元素后的两 ...

  4. python 004 执行环境对比

    对比:os.system os.popen subprocess.Popen subprocess.call 为什么要搞这么多? # --*--encoding: utf-8--*-- import ...

  5. Python练习题 004:判断某日期是该年的第几天

    [Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? ---------------------------------------------- 这题竟然写了 28 行代码! ...

  6. [python学习手册-笔记]004.动态类型

    004.动态类型 ❝ 本系列文章是我个人学习<python学习手册(第五版)>的学习笔记,其中大部分内容为该书的总结和个人理解,小部分内容为相关知识点的扩展. 非商业用途转载请注明作者和出 ...

  7. python笔记:#004#注释

    注释 目标 注释的作用 单行注释(行注释) 多行注释(块注释) 01. 注释的作用 使用用自己熟悉的语言,在程序中对某些代码进行标注说明,增强程序的可读性 02. 单行注释(行注释) 以 # 开头,# ...

  8. 从0开始的Python学习004小的总结与补充

    没有时间?快速阅读: Python确实是一种十分精彩又强大的语言. Python是程序.脚本或者软件 python helloworld.py运行你的Python help()帮助你的Python 命 ...

  9. Python:每日一题004

    题目: 输入某年某月某日,判断这一天是这一年的第几天? 程序分析: 以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于2时需考虑多加一天 个人的思路及 ...

随机推荐

  1. jvm中的新生代Eden和survivor区

    1.为什么会有年轻代 我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完全可以,分代的唯一理由就是优化GC性能.你先想想,如果没有分代,那我们所有的对象都在一块,GC的时候我 ...

  2. 【BZOJ4031】【Luogu P4111】[HEOI2015]小Z的房间

    裸的矩阵树定理.求行列式的时候答案要在中间统计,因为交换两个行会使答案取反. #include <bits/stdc++.h> using namespace std; const int ...

  3. Python基于机器学习方法实现的电影推荐系统

    推荐算法在互联网行业的应用非常广泛,今日头条.美团点评等都有个性化推荐,推荐算法抽象来讲,是一种对于内容满意度的拟合函数,涉及到用户特征和内容特征,作为模型训练所需维度的两大来源,而点击率,页面停留时 ...

  4. DevExpress ASP.NET Core v19.1版本亮点:Visual Studio集成

    行业领先的.NET界面控件DevExpress 发布了v19.1版本,本文将以系列文章的方式为大家介绍DevExpress ASP.NET Core Controls v19.1中新增的一些控件及增强 ...

  5. C# WCF发布服务的元数据的方式

    发布服务元数据的方式有两种:一是基于HTTP-GET协议提供元数据,它是一种绝大多数平台都能支持的简单text-based协议:另一种是元数据交换终结点. 1.基于HTTP-GET协议 <?xm ...

  6. C# out关键字

    在c#中"out"关键字可以通过参数一次返回多个值. using System; namespace ConsoleApplication1 { internal class Pr ...

  7. 对组件、Prop 和 State的研究-----------------引用

    组件 第一步是将 UI 分解成多个组件.例如,我们可以这样来拆分房子: 现在来编码! House:  <div>    <Roof />     // 房顶    <Wa ...

  8. 关于C#的学习

    长期以来对C#的认识一直停留在微软件开发的完全面向对象的语言的模糊印象上,对其工程也缺乏多文件以上级别的修改能力,而当前流行度的驱使下,想深入了解它并运用. 于是从git上下载了一个C#开源项目,打开 ...

  9. node监视文件或者文件夹的变化

    1.node提供一个watch这个API,可以监视文件或文件夹的变化,当发生改变时,做出某些操作.(当做代码本地构建时,经常使用) const fs = require('fs'); fs.watch ...

  10. .Net笔试考题

    .NET试题 1.列举ASP.NET页面之间传递值的几种方式 2.请写出 override 与重载的区别 3.请编程实现一个冒泡排序算法 4.什么是装箱和拆箱 5.ADO.net中常用的对象有哪些?分 ...