美文网首页
《自学是门手艺》读书笔记(16)

《自学是门手艺》读书笔记(16)

作者: 专注执行 | 来源:发表于2020-03-14 19:58 被阅读0次

距离上次写这本书的笔记已经50天了,既然决定要学完,无论如何也要践行到底,这也是对我学习新知的一种考验,既来之,则安之,闲话少叙,直接开始正题。这一节的概念是:集合 set

集合(Set)这个容器类型与列表不同,

1 集合不包含重合元素

2 集合是无序的,其又分为两种,Set,可变的,Frozen Set,不可变的

创建集合

用花括号 {} 把元素括起来,用 , 把元素隔开

见如下示例:

primes = {2, 3, 5, 7, 11, 13, 17}

primes

注意:创建空集合的时候,必须用 set(),而不能用 {}:

from IPython.core.interactiveshell import InteractiveShell

InteractiveShell.ast_node_interactivity = "all"

a = {} # 注意这样创建的是一个 dict(字典),而不是 set 集合

b = set() # 这样创建的才是空集合

type(a)

type(b)

dict

set

操作

将序列类型数据转换成 Set,就等于去重。可以用 in 来判断某个元素是否属于这个集合。len()、max()、min(),也都可以用来操作 Set,而去除某个元素不能用del —— 因为 Set 中的元素没有索引(它不是有序容器)。从 Set 里删除元素,得用 set.remove(elem);而 Frozen Set 是不可变的,所以不能用 set.remove(elem) 操作。

对于集合,有相应的操作符可以对它们进行集合运算:

并集:|

交集:&

差集:-

对称差集:^

事实上,每种数据结构(Data Structures和 “容器”,其实是指同一事物的两种称呼)都有自己的应用场景。当我们需要管理很多用户时,集合就可以派上很大用场。

假定两个集合中有些人是 admins,有些人是 moderators:

admins={'Moose','Joker','Joker'} moderators={'Ann','Chris','Jane','Moose','Zero'}

那么:

admins = {'Moose', 'Joker', 'Joker'}

moderators = {'Ann', 'Chris', 'Jane', 'Moose', 'Zero'}

admins                # 去重自动完成

'Joker' in admins      # Joker 是否是 admins?

'Joker' in moderators  # Joker 是否是 moderator?

admins | moderators    # admins、moderator,或者身兼两职的,即,两个角色中的所有人 in admins or moderators or both

admins & moderators    # 既是 admins 又是 moderator 的都有谁?in both admins and moderators

admins - moderators    # 是 admins 但不是 moderator 的都有谁?in admins but not in moderators

admins ^ moderators    # admins 和 moderator 中不是身兼两职的都有谁?in admins or moderator but not both

运行结果如下:

{'Joker', 'Moose'}

True

False

{'Ann', 'Chris', 'Jane', 'Joker', 'Moose', 'Zero'}

{'Moose'}:

{'Joker'}

{'Ann', 'Chris', 'Jane', 'Joker', 'Zero'}

集合图示及操作符如下:

集合概念理解图例

概念是学习新知的重要基础,只有深刻理解对应的学科概念,才能顺利推进学习进度,三次理解不了,就学五次,五次不行,就学十次,直到搞懂为止。

相关文章

  • 《自学是门手艺》读书笔记(16)

    距离上次写这本书的笔记已经50天了,既然决定要学完,无论如何也要践行到底,这也是对我学习新知的一种考验,既来之,则...

  • 自学是门手艺

    读完李笑来老师的《自学是门手艺》感觉自己很多学习上的问题都豁然开朗,有了方向。 为什么要有自学能力 001全球平均...

  • 自学是门手艺

    前段花时间把来自李笑来老师写的《自学是门手艺》 ,虽然说里面写的内容是Python相关的学习和应用,但是最根本的内...

  • 自学是门手艺

    二十二、2019年10月20日 开始阅读《自学是门手艺》 第二十二天 第十一章 第6节 保存到文件的函数 1、当...

  • 自学是门手艺

    《自学是门手艺》是李笑来老师于今年七月刚刚创作的一本新书。 毋庸置疑,自学肯定是门手艺,而且几乎是人人都想学会的手...

  • 自学是门手艺

    原文地址 前言:这个世界变化频率和变化幅度都在不断加大的时代,自学能力是这个时代最具价值的能力。自学是门手艺,手艺...

  • 自学是门手艺

    去年就看了李笑来的这本书,今年又翻开,仿佛之前没有看过一样 都忘记了 一,自学本身是门手艺,学什么并不重要。求学阶...

  • 自学是门手艺

    最近看的李笑来《自学是门手艺》一书,我在找他书里的经典语录,通读一遍之后就开始精读做笔记了。 最近看的第二部分...

  • 自学是门手艺

    二十七、2019年10月25日 开始阅读《自学是门手艺》 第二十七天 第十四章 第1节 类——面向对象编程 1、争...

  • 自学是门手艺

    我报名了Python自学训练营,训练营的一个目的吸引了我——通过Python的学习,让学员学会“自学”。 由于还没...

网友评论

      本文标题:《自学是门手艺》读书笔记(16)

      本文链接:https://www.haomeiwen.com/subject/hsknshtx.html