读书笔记
Morbidmuse
这个作者很懒,什么都没留下…
展开
-
数据可视化
《python编程从入门到实践》(第二版)数据可视化matplotlibplotly原创 2022-01-06 13:14:44 · 1112 阅读 · 0 评论 -
Django项目:学习笔记开发全过程
《python编程从入门到实践》(第二版)实践项目3:Django web开发_学习笔记learning_log写在之前: 这个项目虽然是一个非常简单的web应用,涉及的知识点较多,包含Django,git,heroku,bootstrap,html,数据库,等等,不过数据库作者使用了sqlite,只要跟着书做,倒是也没什么复杂的操作. 虽然一板一眼地照着书一步一步地做,还是遇到了很多问题,特别是在最后的部署环节,因为外网限制等一些问题,从注册账号开始就举步...原创 2022-01-05 11:11:21 · 1464 阅读 · 0 评论 -
读书笔记:<python一行流> -- 3Numpy和一行流
numpy与数据科学中的一行流基础二维数组计算创建一维\二维\三维数组import numpy as npa = np.array([1,2,3,4,5,6,7])b=np.array([[1,2], [3,4]])c=np.array([[[1,2],[3,4]], [[5,6],[7,8]]])#查看数组的维度print(a.ndim)1#查看数组的维度print(b.ndim)print(c.ndim)23二维原创 2021-12-27 17:31:01 · 790 阅读 · 1 评论 -
Pygame:外星人入侵
《python编程从入门到实践》(第二版)实践项目1:pygame游戏:外星人入侵文档说明:游戏主文件夹:alien_invasion项目规划: 玩家控制一艘最初出现在屏幕底部中央的飞船 操作说明: 使用箭头键左右移动飞船 使用空格键射击 游戏开始时,一群外星人出现在天空中,并向屏幕下方移动,玩家的任务是射杀这些外星人 玩家将所有外星人消灭干净后,将出现一群新的,并且移动速度更快 只要有外星...原创 2021-12-22 15:56:41 · 3936 阅读 · 3 评论 -
读书笔记:<python一行流> -- 2基础技巧
这本书基本就是通过列表推导式,匿名函数,高阶函数,海象运算符等等技巧让很多程序变成只有一行代码,是一个炫技的好技能,不过作者克里斯蒂娜.迈耶完全是从开发实践出发,编写简洁,高性能的一行流.关于炫技,比如看到有大神写的条件判断的7种方式中的.age = 18print(('未成年','成年了')[age > 18])print((age>18) and '成年了' or '未成年')print((lambda:"未成年", lambda:"已成年")[age >...原创 2021-12-20 17:25:35 · 851 阅读 · 0 评论 -
<<流畅的Python>>读书笔记--汇总
历时80小时,终于完成了这本巨作的阅读,传言不虚,本书确实是Python进阶读物中相当有分量的一本.第一部分:序幕第一章:python的数据模型本章查找关键字:待补充。。。第二部分:数据结构第二章:序列构成的数组第三章:字典和集合第四章:文本和字节序列第三部分:把函数视作对象第5章:一等函数第6章:使用一等函数实现设计模式第7章:函数装饰器和闭包第四部分:面向对象惯用法第8章:对象引用、可变性和垃圾回收第9章:符合python风格的对象...原创 2021-12-17 14:50:17 · 1127 阅读 · 0 评论 -
读书笔记:《流畅的Python》第21章 类元编程
# 第21章 类元编程"""类元编程指的是运行时创建或定制类的技艺 1.类是一等对象,任何时候都可以使用函数新建类,而无需使用class关键字 2.类装饰器也是函数,不过能够审查/修改/甚至把被装饰的类替换成其他类 3.元类功能强大,但难以掌握,类装饰器能用更简单的方式解决很多问题"""# 21.1 类工厂函数# collections.namedtuple:# 把一个类名和几个属性名传给这个函数,它会创建一个tuple的子类,# 其中的元素通过名.原创 2021-12-17 14:22:57 · 752 阅读 · 0 评论 -
读书笔记:《流畅的Python》第20章 属性描述符
# 第20章 属性描述符"""描述符: 是对多个属性运用相同存取逻辑的一种方式 描述符是实现了特定协议的类 包括__get__.__set__.__delete__ property实现了完整的描述符协议 使用描述符的python功能还有staticmethod\classmethod装饰器 理解描述符是精通python的关键"""# 20.1描述符示例:验证属性# 20.1.1 LineItem类第三版:一个简单的描述符类# 实现了__get__..原创 2021-12-16 16:00:56 · 606 阅读 · 0 评论 -
读书笔记:《流畅的Python》第19章 动态属性和特性
# 第19章 动态属性和特性"""属性(attribute): 数据的属性和处理数据的方法统称属性,方法只是可调用的属性.特性(property) 除此之外,我们海可以创建特性,在不改变类接口的前提下使用存取方法 (即读值方法和设值方法)修改数据属性,这与统一访问原则相符统一访问原则: 不管服务是由存储还是计算实现的,一个模块提供的服务都应该通过统一的方式使用python还提供了丰富的API,用于控制属性的权限,以及实现动态属性使用点号访问属性时(obj.a.原创 2021-12-16 07:00:00 · 356 阅读 · 0 评论 -
读书笔记:《流畅的Python》第18章 使用asyncio处理并发
# 第18章 使用asyncio处理并发"""并发:同时发生 关于结构 用于制定方案并行:同时进行,真正的并行只能是多个cpu核心,一个核心同一时刻只能做一件事情 关于执行 用来解决可能并行的问题asyncio包使用事件循环驱动的协程实现并发本章内容提要: 1.对比一个简单的多线程程序和对应的asyncio版,说明多线程和异步任务之间的关系 2.asyncio.Future和concurrent.futures.Future类之间的区别 3.原创 2021-12-15 09:36:48 · 380 阅读 · 0 评论 -
读书笔记:《流畅的Python》第17章 使用future处理并发
# 第17章 使用future处理并发"""内容提要: concurrent.futures模块 future的概念:是一种对象,表示异步执行的操作 是concurrent.futures和asynicio包的基础"""# 17.1 网络下载的三种风格# 17.1.1 依序下载的脚本# 依序下载的脚本,另外两个版本会重用其中的几个函数 flags.py# 17.1.2 使用concurrent.futures模块下载"""只要是使用了 Thread.原创 2021-12-13 14:24:28 · 639 阅读 · 0 评论 -
读书笔记:《流畅的Python》第16章 协程
# 第16章 协程"""to yield 的两个释义: 产出 yield item会产出一个值,提供给调用方的next() 让步 暂停执行生成器,让调用方继续工作,直到需要使用另一个值时,调用next()协程: 和生成器类似,都是定义体中包含yield关键字 协程中,yield通常出现在表达式的右边,可以产出值,也可以产出,这时生成器产出None 协程从调用方接受数据 .send()方法 yield甚至.原创 2021-12-08 16:29:00 · 522 阅读 · 0 评论 -
读书笔记:《流畅的Python》第15章 上下文管理器和else块
# 第15章 上下文管理器和else块"""本章内容提要: with语句和上下文管理器 for while try语句的else子句"""# 15.1 先做这个,再做那个:if语句之外的else块# else子句的行为"""for / else 仅当for循环运行完毕(即没有被break终止)才运行else块while / else 仅当while循环因为条件为false退出(即没有被break终止)才运行else块try/ else 仅当t.原创 2021-12-07 14:11:33 · 481 阅读 · 0 评论 -
读书笔记:《流畅的Python》第14章 可迭代对象、迭代器和生成器
# 第14章 可迭代对象、迭代器和生成器"""迭代器模式(iterator pattern) 扫描内存中放不下的数据集时,我们需要找到一种惰性获取数锯的方式, 即按需一次获取一个数据项迭代器用于从集合中取出元素,而生成器(generator)用于"凭空"生成元素迭代器用于支持: 1.for循环 2.构建和扩展集合类性 3.逐行遍历文本文件 4.列表推导\集合推导\字典推导 5.元组拆包 6.调用函数时,使用*拆包实参本章内容提.原创 2021-12-02 14:15:54 · 756 阅读 · 0 评论 -
读书笔记:《流畅的Python》第13章 正确重载运算符
# 第13章 正确重载运算符# 运算符重载的作用是让用户定义的对象使用中缀运算符或者一元运算符"""本章内容提要: 1 python如何处理中缀运算符中不同类型的操作数 2 使用鸭子类型或者显式类型检查处理不同类型的操作数 3 中缀运算符如何表明自己无法处理操作数的特殊行为 4 增量运算符(+=)的默认处理方式和重载方式"""# 运算符重载基础"""python对运算符重载施加的一些限制: 1.不能重载内置类型的运算符 2.不能新建运算符,.原创 2021-11-30 10:37:36 · 481 阅读 · 0 评论 -
读书笔记:《流畅的Python》第12章 继承的优缺点
# 第12章 继承的优缺点"""内容大纲: 继承和子类化 子类化内置类型的缺点 多重继承和方法解析顺序"""# 子类化内置类型很麻烦# python 2.2 之前不支持内置类型子类化,之后支持了# 重要注意事项:使用C编写的内置类型不会调用用户定义的类覆盖的特殊方法# 例如dict的子类覆盖了__getitem__()方法,不会被内置类型的get()方法调用# 示例 12-1 内置类型的dict的__init__和__update__方法会忽略.原创 2021-11-29 11:27:21 · 621 阅读 · 0 评论 -
读书笔记:《流畅的Python》第11章 接口:从协议到抽象基类
# 第11章 接口:从协议到抽象基类"""本章探讨从鸭子类型的代表特征动态协议,到使接口更明确、能雅正实现是否符合规定的抽象基类本章将实现一个抽象基类,看看它的运作方式,但作者不建议自己编写抽象基类,因为容易过度设计"""# 11.1 Python文化中的接口和协议# 协议是接口,但不能像正式接口那样施加限制,python通过抽象基类对接口作一致性的强制,# 一个类可以只实现部分接口# 11.2 Python喜欢序列# Foo类没有继承abc.sequence,而且只实现了序列协议的.原创 2021-11-26 14:31:31 · 514 阅读 · 0 评论 -
读书笔记:《流畅的Python》第10章 序列的修改、散列、切片
# 第十章 序列的修改、散列和切片"""本章定义表示多维向量的Vector类: 它将实现以下功能: 基本的序列协议,__len__,__getitem__ 正确表述拥有很多元素的实例 适当的切片支持,用于生成Vector实例 总和各个元素的值,计算散列值 自定义的格式扩展语言 属性的动态读取,__getattr__"""# 10.1 Vector类:用户定义的序列类型"""向量的分量存储.原创 2021-11-25 16:12:52 · 463 阅读 · 0 评论 -
读书笔记:《流畅的Python》第9章 符合Python风格的对象
# 第九章 符合python风格的对象"""鸭子类型(duck typing): 一个动物只要走起路来像鸭子,叫起来像鸭子,那么我就说它是鸭子 一个对象只要按照预定行为实现了对象所需的方法即可""""""内容提要: 1.支持用于生成对象其他表示形式的内置函数repr/bytes 2.使用一个类方法实现备选构造方法 3.扩展内置的format()函数和str.format()方法使用的格式微语言 4.实现只读属性 5.把对象变为可散列的.原创 2021-11-19 14:46:16 · 683 阅读 · 0 评论 -
读书笔记:《流畅的Python》第8章 对象引用、可变性、垃圾回收
# 第八章 对象引用、可变性、垃圾回收"""对象名称和对象有区别: 变量是标注,而不是盒子内容提要: 1.对象标识、值、别名 2.元组是不可变的,但其中的值可以改变 3.深浅复制 4.引用和函数参数 可变的默认值参数引起的问题 如何安全地处理函数的调用者传入的可变参数 5.垃圾回收 del命令 使用弱引用记住对象,而无需对象本身存在"""# 8.1变量不是盒子"""Python中.原创 2021-11-18 11:27:56 · 348 阅读 · 0 评论 -
读书笔记:《流畅的Python》第4章 文本和字节序列
# 第四章 文本和字节序列"""内容提要: 1.Unicode字符串 2.二进制序列 3.在二者之间转换使用的编码 4.字符/码位/字节表述 5.bytes/bytearray/memoryview等二进制序列的独特特性 6.全部Unicode和陈旧字符集的编解码器 7.避免和处理编码错误 8.处理文本文件的最佳实践 9.默认编码的陷阱和标准I/O的问题 10.规范化Unicode文本,进行安全的比较 11.规范化.原创 2021-11-16 12:58:54 · 644 阅读 · 0 评论 -
读书笔记:《流畅的Python》第3章 字典和集合
"""dict广泛应用于模块的命名空间\实例的属性\函数的关键字参数它的内置函数都放在__builtins__.__dict__模块中散列表是字典背后的数据结构集合的实现也依赖散列表""""""本章内容大纲 1.常见的字典方法 2.如何处理查找不到的键 3.标准库中dict的变种 4.set和frozenset类型 5.散列表的工作原理 6.散列表的潜在影响 什么样的数据类型可作为键 不可预知的顺序"""# .原创 2021-11-12 11:05:09 · 775 阅读 · 0 评论 -
读书笔记:《流畅的Python》第七章 函数装饰器和闭包
内容提要python如何计算装饰器句法python如何判断变量是不是局部的闭包存在的原因和工作原理nonlocal能解决什么问题实现行为良好的装饰器标准库中有用的装饰器实现一个参数化装饰器7.1装饰器的基础知识# 装饰器用于在源码中标记函数,以某种方式增强函数的行为# 闭包内层函数使用了外层函数的变量# 理解关键字nonlocal# 装饰器的基础知识# 装饰器是一个可调用的对象# 其参数是另一个函数(被装饰的函数)# 装饰器原创 2021-11-04 11:47:59 · 224 阅读 · 0 评论 -
读书笔记:《流畅的Python》第六章 使用一等函数实现设计模式
一些概念# 策略模式# 定义一系列算法,把它们一一封装起来,并且使他们可以相互替换,使得算法# 可以独立于使用它的客户而变化。# 模板方法# 访问者模式# 重构策略模式# 代码:# 经典的策略模式.py# 使用函数实现策略模式.py# 享元(flyweight)# 是可共享的对象,可以同时在多个上下文中使用# 命令模式 : 目的是解耦调用操作的对象(调用者)和提供实现的对象(接收者)经典的策略模式:电商折扣原创 2021-11-01 12:59:05 · 172 阅读 · 0 评论 -
读书笔记:《流畅的Python》第五章 一等函数
# 一等对象/一等函数'''1.在运行时创建2.能赋值给变量或数据结构中的元素3.能作为函数的参数传给函数4.能作为函数的返回值返回结果'''# 函数对象本身时function对象的实例def factorial(n): '''return n!''' return 1 if n < 2 else n*factorial(n-1)"""print(factorial(42))print(factorial.__doc__) # 打印函数说明print(t.原创 2021-10-29 13:39:38 · 384 阅读 · 1 评论 -
读书笔记:《流畅的Python》第二章 数据结构
'''内置序列类型 容器序列 : 能存放不同类型的数据 list tuple collections.deque 扁平序列 : 只能容纳一种类型 str bytes bytearray 字节数组 memoryview 内存镜像 arrayarray 可变序列: MutableSequence list bytearray array..原创 2021-10-22 16:24:54 · 172 阅读 · 0 评论 -
读书笔记:《流畅的Python》第一章 数据模型
本章概述了python的数据模型,即对python框架的描述,它规范了这门语言自身构建模块的接口,之后通过模拟扑克牌和实现二维向量,简单分析了python中的特殊方法--魔术方法(dundermethod),双下划线方法.如__getitem__,__len__,__add__等'''第一章 Python的数据模型序列 sequence迭代器 generator函数 function类 class上下文管理器 textmanagermagic method(魔术方法)__.原创 2021-10-18 13:43:12 · 123 阅读 · 2 评论