2019.4.3 S21 day06笔记总结

一、昨日内容补充

1.列表独有功能:

  • 1.revers 反转

    例:v1 = [1,2,4,88,2]

    v1.revers()

    print(v1)

  • 2.sort

    例:v1 = [1,2,4,88,2]

    v1.sort(revers = False)    # 从小到大排列  (默认的,等同于v1.sort())

    、   v1.sort(revers = True)     # 从大到小排列

    print(v1)

2.字典独有功能

    1. .get()

      索引不存在,列表、元组会报错,字典也会报错(可以使用.get())

      例:info = {'k1':'v1','k2':'v2'}

      v1 = info['k1111']

      v2 = info.get('k1111')     # 表示'k1111'存在则取它的值,不存在则返回一个空值None,None在python中表示空

      v3 = info.get('k1111',666)    # 如果不存在就返回一个666

      None 数据类型,该类型表示空。无任何功能,专门用于表示空值。

    2. pop

      例:info = {'k1':'v1','k2':'v2'}

      result = info.pop('k1')    # 将pop删除的数据赋值给result

      info.del('k1')           #  仅仅是删除

      print(result)update()

    3. .update()

      例:info = {'k1':'v1','k2':'v2'}

      info.update({'k3':'v3','k4':'v4','k2':666})

      print(info)      # {'k1':'v1','k2':666,'k3':'v3','k4':'v4',}

      不存在,则增加;存在,则更新、修改。

3.判断一个字符串中是否有敏感字符?

  • 1.str

    例:v = 'python全栈21期'

    if '全栈' in v:

    print('含有敏感字符')

  • 2.list/tuple

    例:v = ['alex','oldboy','藏老四','利奇航']

    if '利奇航' in v:

    print('含有敏感字')

  • 3.dict

    例:v = {'k1':'v1','k2':'v2','k3':'v3'}

    . # 默认按照键判断,即判断x是否是字典的键

if 'x' in v :

pass

.# 请判断:'k1'是否在其中?

if 'k1' in v:

.# 请判断:'v2'是否在其中?

方式一:

flag = '不存在'

for v in v.value:

if v == v2:

flag = '存在'

print(flag)

方式二:

if 'v2' in list(v.values()):    # 强制转换成列表['v1','v2','v3']

pass

.# 请判断:k2:v2是否在其中?

value = v.get('k2')

if value == 'v2':

print('存在')

else:

print('不存在')

二、今日内容

1.集合 set

  • 1.集合是无序的,不可重复的

    • None        空数据类型,本身是空,所以没有代表空的符号

    • int/bool     没有代表空的符号,int()=0,bool()=False

    • str            空字符串:""/str()

    • list           空列表:[]/list()

    • tuple        空元组:()/tuple()

    • dict          空字典:{}/dict()

    • set          空集合:set()

  • 2.独有功能

      1. .add() 添加

        例:v1 = {1,2}

        v1.add('lishaoqi')

        v1.add('lishaoqi')   # 第二次运行不会相加

        print(v1)

      2. .discard 删除

        例:v1 = {1,2,'李绍奇'}

        v1.discard('李绍奇')

        print(v1)    #  {1,2}

      3. .update() 批量添加

        例:v1 = {1,2,'李绍奇'}

        v1.update({22,44,33})

        print(v1)

      4. .intersection() 交集

        例:v1 = {1,2,'李绍奇'}

        result = v1.intersection({1,'李绍奇','小黑'})   # 形成一个新的东西

        print(result)    # {1,'李绍奇'}

      5. .union() 并集

        例:v1 = {1,2,'李绍奇'}

        result = v1.union({1,'李绍奇','小黑'})

        print(result)

      6. .difference() 差集

        例:v1 = {1,2,'李绍奇'}

        result = v1.difference({1,'李绍奇','小黑'})    #  v1中有且{1,'李绍奇','小黑'}中没有的

        print(result)   #  {2}

        v1 = {1,'李绍奇','小黑'}

        result = v1.difference({1,2,'李绍奇'})

        print(result)    #  {'小黑'}

      7. .symmetric_difference 对称差集

  • 3.公共功能

    • len

      例:v = {1,2,'李绍奇'}

      print(len(v))    # 3

    • for循环

      例:v = {1,2,'李绍奇'}

      for item in v:

      print(item)

  • 4.嵌套

    • 1.列表、字典、集合是可变的,不可放在集合中,并且不能作为字典的key ( unhashable不可哈希)

      info = {1,2,3,True,"国风",None,(1,2,3)}

      print(info)

    • 2.hash :哈希是怎么回事?

      因为在内部会将值进行哈希算法,并得到一个数值(对应内存地址),以后用于快速查找。

      例1:info = {1,2,3,True,"国风",None,(1,2,3)}       #  {1,2,3,"国风",None,(1,2,3)}

      info = {2,3,True,"国风",None,(1,2,3)}          #  {True,1,2,3,"国风",None,(1,2,3)}

      info = {0,2,3,False,"国风",None,(1,2,3)}     #  {0,2,3,"国风",None,(1,2,3)}

      info = {2,3,False,"国风",None,(1,2,3)}        #  {False,2,3,"国风",None,(1,2,3)}

      print(info)

      例2:info = {

      1:'alex'

      True:'oldboy'

      }

      print(info)     #  {1:'oldboy'}

2.内存相关

  • 1.两种情况:

    修改内部元素(列表/字典/集合)

    重新赋值

  • 2.查看内存地址  id

    例:v1 = [1,2,3]                                                            v1 = [1,2,3]

    v2 = [1,2,3]     #  v1 、v2不是同一个地址              v2 = v1    # v1 、v2是同一个地址

    print(id(v1),id(v2))

    注意:

    python常见的会缓存,放到同一个地址。(缓存机制、小数据池)

    按理v1、v2应该是不同的内存地址。特殊:

    int :  -5~256是常见的

    字符串:'alex'/'swde'/'a_ds'/'ades_sds'等

    问题:== 和 is 有什么区别?

    == 是比较的值是否相等

    is 用于比较内存地址是否相等

python day06笔记总结的更多相关文章

  1. Web Scraping with Python读书笔记及思考

    Web Scraping with Python读书笔记 标签(空格分隔): web scraping ,python 做数据抓取一定一定要明确:抓取\解析数据不是目的,目的是对数据的利用 一般的数据 ...

  2. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  3. VS2013中Python学习笔记[Django Web的第一个网页]

    前言 前面我简单介绍了Python的Hello World.看到有人问我搞搞Python的Web,一时兴起,就来试试看. 第一篇 VS2013中Python学习笔记[环境搭建] 简单介绍Python环 ...

  4. python学习笔记之module && package

    个人总结: import module,module就是文件名,导入那个python文件 import package,package就是一个文件夹,导入的文件夹下有一个__init__.py的文件, ...

  5. python datetime笔记

    python datetime笔记 http://mint-green.diandian.com/post/2011-09-09/4892024 获取当前时间,并通过字符串输出. 格式为:%Y-%m- ...

  6. python学习笔记(六)文件夹遍历,异常处理

    python学习笔记(六) 文件夹遍历 1.递归遍历 import os allfile = [] def dirList(path): filelist = os.listdir(path) for ...

  7. python学习笔记--Django入门四 管理站点--二

    接上一节  python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...

  8. python学习笔记--Django入门0 安装dangjo

    经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误.现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/ ...

  9. python学习笔记(一)元组,序列,字典

    python学习笔记(一)元组,序列,字典

随机推荐

  1. VS2017自定义新建模板

    今天测试了一下用自定义的模板新建C++模板,结果出了一些问题,不过已经解决了,现在把经验分享出来. 1. 首先可以先自定义一个以后经常用的模板,例如下面这个. 2.   项目   下找到    导出模 ...

  2. python3-基础8

    模块与包 什么是模块 模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. #在python中,模块的使用方式都是一样的,但其实细说的话,模块可以分为四个通用类别: 1 ...

  3. 【如皋OJ】1127:正整数N转换成一个二进制数

    1127: 正整数N转换成一个二进制数 时间限制: 1 Sec  内存限制: 128 MB提交: 85  解决: 59[提交] [状态] [讨论版] [命题人:zhuzhigang] 题目描述 输入一 ...

  4. ASP.NET CORE 3 安装遇到的问题

    最近在研究 ASP.NET CORE, visualstudio2019 也已正式发布,本以为安装vs2019后就默认支持asp.net core 3,谁知是不支持的,需单独安装net core 3及 ...

  5. 京东饭粒捡漏V1.14

    20180703 更新 V1.141.修改秒杀价格BUG:2.增加秒杀/抢购,循环控制: 功能介绍1.京东商城专用,支持饭粒模式下单,自己获得京豆返利 2.捡漏模式:帮助用户监控抢购商品,有库存的时候 ...

  6. python之路——24

    复习 1.面向对象编程 思想:角色的抽象,创建类,实例化,操作实例2.面向对象的关键字 1.类的静态属性,存储在类的命名空间 2.类名.方法(对象),对象.方法 3.对象可以使用静态变量:类不可以使用 ...

  7. 常用内置函数_eval_exce

    内置函数 abs 绝对值函数 res = abs(-19) print(res) round 四舍五入(n.5时, 奇数进偶数不进) sum 计算序列的和(元素是数字类型) listvar = (1, ...

  8. golang 结构体中的匿名接口

    golang 结构体中的匿名接口 代码示例 golang 中,可以给结构体增加匿名field,可参考 unknwon 大神的书. 匿名字段和内嵌结构体 但,golang同时也可以给结构体定义一个匿名i ...

  9. 学习MeteoInfo二次开发教程(十)

    1.复制文件cloud_1009271330.000,I-01.pal 2.改: GridData cloud = aDataInfo.GetGridData(""); 为: Gr ...

  10. C语言数据结构基础学习笔记——图

    图(G)由顶点集(V)和边集(E)组成,G=(V,E) 常用概念: ①V(G)表示图G中顶点的有限非空集,V永不为空: ②用|V|表示图G中顶点的个数,也称为图G的阶: ③E(G)表示图G中顶点之间关 ...