@

今日内容

  • 集合(set)

具体内容

1.集合含义

  • 一个无序的不重复元素序列。

  • 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

  • 空集合:set()

  • 基本格式

    a = {1,2,3,4,5,6}
    parame = {value01,value02,...}
    # 或者
    set(value01,value02,...)

2.独有方法

  • "add()" ,添加:所添加值没有原值输出、新值增加

    info = {"name",'li','age',18,'gender','男',}
    info.add(11)
    print(info)       # {'li', 11, 18, '男', 'gender', 'age', 'name'}
  • ​"discard()" ,删除:所删除值没有原值输出、不会报错

    info = {"name",'li','age',18,'gender','男',}
    info.discard(18)
    print(info)       #{'男', 'li', 'name', 'age', 'gender'}键
  • "update()" ,批量添加。

info = {"name",'li','age',18,'gender','男',}
del info['gender']
print(info)   # {'name': 'li', 'age': 18}
  • "intersection()" ,交集:生成新值。括号里可以列表、集合、元祖。

    info = {"name",'li','age',18,'gender','男',}
    result = info.intersection({1,'li','男'})
    print(result) # {'li', '男'}
  • "union()" ,并集:生成新值。括号里可以列表、集合、元祖。

    info = {"name",'li','age',18,'gender','男',}
    result = info.union({1,'li','男'})
    print(result) # {'gender', 1, '男', 18, 'name', 'age', 'li'}
  • "difference()" ,差集:生成新值。括号里可以列表、集合、元祖。

    info = {"name",'li','age',18,'gender','男',}
    result = info.difference({1,'li','男'})
    print(result) # {'name', 18, 'age', 'gender'}
  • "symmetric_difference()" ,对称差集:生成新值。括号里可以列表、集合、元祖。

    info = {"name",'li','age',18,'gender','男',}
    result = info.symmetric_difference({1,'li','男'})
    print(result) # {1, 'name', 'gender', 18, 'age'}

3.公共方法

  • len

    info = {"name",'li','age',18,'gender','男',}
    print(len(info))  # 6
  • for 循环

    info = {"name",'li','age',18,'gender','男',}
    for a in info:
        print(a)  # 循环打印出所有元素

4.特殊情况

  • 1、集合与列表取交集

    info = {"name",'li','age',18,'gender','男',}
    result = info.intersection([1,'li','男'])
    print(result) # {'li', '男'}   # {'li', '男'}
  • 2.集合中出现0与False(谁在前输出谁)

    info = {0, 2, 3, 4, False, "国风", None, (1, 2, 3)}
    print(info)       # {0, '国风', 2, 3, 4, None, (1, 2, 3)}
  • 3.字典中1与Ture同时为键(谁在前把后面值赋给前面的键)

    info = {
        1:'alex',
        True:'oldboy'
    }
    print(info)       # {1: 'oldboy'}

5.总结

    1. 列表/字典/集合 -> 不能放在集合中+不能作为字典的key(unhashable)
    2. hash(哈希):因为在内部会将值进行哈希算法并得到一个数值(对应内存地址),以后用于快速查找。

分分钟钟学会Python - 数据类型(set)的更多相关文章

  1. 分分钟钟学会Python - 数据类型(list、tuple)

    第四节 数据类型(列表.元祖) 今日内容 列表 元祖 1.列表 1.格式 users = ["ji",1,3,"gyhj"] 2.公共方法 1.len #计算长 ...

  2. 分分钟钟学会Python - 数据类型(int、bool、str)

    第三天学习内容 今日内容 1.整型(int) 2.布尔类型(bool) 3.字符串(str) 内容详细 1.整型 Python中的整型用int表示. 1.python2中: 在32位机器上,整数的位数 ...

  3. 分分钟钟学会Python - 数据类型(dict)

    今日内容 字典(dict) 具体内容 1.字典含义 帮助用户去表示一个事物的信息(事物是有多个属性). 基本格式 data = {键:值,键:值,键:值,键:值,键:值,键:值,} # 练习题 use ...

  4. 分分钟钟学会Python - 基础

    1.常见操作系统 1.windows xp/win7/win/10/window server 2.linux centos,图形化界面差 ubuntu,个人开发(图形化比较好) redhat,企业级 ...

  5. 分分钟钟学会Python - 模块

    目录 模块 1 模块基础知识 2 random 返回随机生成的一个实数 3 hashlib 摘要算法模块 Hmac算法 4 time /datetime 时间模块 5 getpass 密码不显示(只能 ...

  6. 分分钟钟学会Python - 函数(function)

    函数(function) 1 基本结构 本质:将多行代码拿到别处并起个名字,以后通过名字就可以找到这行代码并执行 应用场景: 代码重复执行 代码量很多超过一屏,可以选择通过函数进行代码的分割 写代码方 ...

  7. 分分钟钟学会Python -基础&运算符

    day002 基础&运算符 1.循环语句 ### 1.循环格式 while 条件: print('') ''' while True: print('人生苦短,我用Python.') ''' ...

  8. 分分钟钟学会Python - 解释器安装

    1.解释器安装 1. 下载解释器 python 2.7.16 (2020年官方不在维护) python 3.6.8 (推荐) 2.安装 python 3.6.8 安装位置随意,自己能找到了就行. 安装 ...

  9. 分分钟钟学会Python - 文件操作

    文件操作 1 文件基本操作 obj = open('路径',mode='模式',encoding='编码') obj.write() # 写入 obj.read() # 读取 obj.close() ...

随机推荐

  1. 为 pycharm 修改 Theme & Color

    版本: pycharm-community-4.5.2 安装之后先导入 (File --> Import Setting --> django.jar) 将文件pycharm-themes ...

  2. OBD Problem Vehicles

    This page contains a list of vehicles that are known to be non-compliant with OBD-II in one way or a ...

  3. 【转载】mysql中timestamp,datetime,int类型的区别与优劣

    转载来自souldak,微博:@evagle以下内容整合筛选自互联网: int1. 占用4个字节2. 建立索引之后,查询速度快3. 条件范围搜索可以使用使用between4. 不能使用mysql提供的 ...

  4. Spring框架总结(七)

    Spring代理模式:名词解释: 代理是一种开发的设计模式,用途:提供了对目标对象另外的访问方式,及通过对代理访问目标对象. 优势: 可以在目标对象实现的基础上,增强额外的功能操作,(扩展目标对象的功 ...

  5. HttpUploader2-queue版本

    1.1 2016版本 目标: 1.大幅度优化JS代码,面向开发人员更加友好,逻辑清晰,代码简洁,便于阅读,定制开发,扩展,更加符合企业级应用需求. 2.大幅度使用并发技术来提高上传速度,与HttpUp ...

  6. 可epoll队列

    什么是可epoll队列? 就可以使用epoll来监控队列中是否有数据的队列,当然也支持select和poll. 应用场景 一个线程,需要将队列(共享内存队列或普通队列均可)中的数据取出来,然后通过网络 ...

  7. Middleware / 中间件

    中间件格式 module.exports = options => { return (ctx, next) => { // do something } } 中间件格式为一个高阶函数,外 ...

  8. Java网络编程のTCP/IP

    TCP/IP参考模型和TCP/IP协议 与OSI参考模型相似,TCP/IP参考模型汲取了网络分层的思想,而且对网络的层次做了简化,并在网络各层都提供了完善的协议,这些协议构成了TCP/IP协议集,简称 ...

  9. 关于Java中的几种特殊类与接口,及特殊的创建实例的方法

    Java中有一些特殊的类,在教材中讲解的不深,但是确实非常有用的,这里总结一下,里面用到的有网上搜到的内容,这里表示下感谢. 一.成员内部类 成员内部类是在一个内中定义的另外一个类,这个类属于其上的类 ...

  10. jquery stop(true,false)的意思

    stop 是jQuery中用于控制页面动画效果的方法.运行之后立刻结束当前页面上的动画效果.stop在新版jQuery中添加了2个参数:第一个参数的意思是是否清空动画序列,也就是stop的是当前元素的 ...