My_Study_Python
latest

PYTHON学习笔记

  • python入门
    • 1. python基础
      • 1.1. 环境准备
        • 1.1.1. mac安装python
        • 1.1.2. 环境配置
        • 1.1.3. python解释器
      • 1.2. 运行第一个程序
        • 1.2.1. 编写文件
        • 1.2.2. 运行hello world
      • 1.3. Python基础
        • 1.3.1. 数据类型
        • 1.3.2. 变量
        • 1.3.3. 字符编码
        • 1.3.4. 转化
        • 1.3.5. len函数
        • 1.3.6. 强制编码
        • 1.3.7. 字符串格式化
        • 1.3.8. list
        • 1.3.9. tuple
        • 1.3.10. if
        • 1.3.11. match
        • 1.3.12. 循环
        • 1.3.13. dict
        • 1.3.14. set
      • 1.4. 函数
        • 1.4.1. 调用函数
        • 1.4.2. 定义函数
        • 1.4.3. 空函数
        • 1.4.4. 参数校验
        • 1.4.5. 多返回值
        • 1.4.6. 函数默认值
        • 1.4.7. 可变参数
        • 1.4.8. 关键字参数
        • 1.4.9. 参数组合
        • 1.4.10. 递归函数
    • 2. python进阶
      • 2.1. 模块
        • 2.1.1. 编写模块
        • 2.1.2. 安装第三方包
      • 2.2. 面向对象编程
        • 2.2.1. 类demo
        • 2.2.2. 类和实例
        • 2.2.3. 访问限制
        • 2.2.4. 继承和多态
        • 2.2.5. 获取对象类型信息
        • 2.2.6. 获取对象属性和方法信息
        • 2.2.7. 实例属性和类属性
      • 2.3. 错误调试测试
        • 2.3.1. 捕捉异常
        • 2.3.2. 抛出异常
        • 2.3.3. 调试方法
        • 2.3.4. 单元测试
      • 2.4. IO编程
        • 2.4.1. 文件读写
        • 2.4.2. StringIO和BytesIO
        • 2.4.3. 操作文件和目录
        • 2.4.4. 序列化
      • 2.5. 进程线程
        • 2.5.1. fork
        • 2.5.2. multiprocess
        • 2.5.3. pool
        • 2.5.4. subprocess
        • 2.5.5. ipc
        • 2.5.6. 多线程
        • 2.5.7. 分布式进程
      • 2.6. 正则表达式
        • 2.6.1. 是否匹配
        • 2.6.2. 切分字符串
        • 2.6.3. 分组
        • 2.6.4. 编译正则
      • 2.7. 常见模块
        • 2.7.1. datetime
        • 2.7.2. collections
        • 2.7.3. argparser
        • 2.7.4. base64
        • 2.7.5. struct
        • 2.7.6. hashlib
        • 2.7.7. hmac
        • 2.7.8. itertools
        • 2.7.9. contextlib
        • 2.7.10. request
      • 2.8. 网络编程
        • 2.8.1. tcp client
        • 2.8.2. tcp server
        • 2.8.3. wsgi
        • 2.8.4. flask
      • 2.9. 邮件收发
      • 2.10. 数据库
    • 3. python高级
      • 3.1. 高级特性
        • 3.1.1. 切片
        • 3.1.2. 是否可以迭代判定
        • 3.1.3. 常见类型的遍历方法
        • 3.1.4. 列表生成式
        • 3.1.5. 生成器
        • 3.1.6. 自己定义一个生成器函数
        • 3.1.7. 迭代器
      • 3.2. 函数式编程
        • 3.2.1. 函数调用和函数
        • 3.2.2. 传入函数
        • 3.2.3. mapreduce
        • 3.2.4. filter
        • 3.2.5. sorted
        • 3.2.6. 函数作为返回值
        • 3.2.7. 闭包
        • 3.2.8. 匿名函数
        • 3.2.9. 装饰器
        • 3.2.10. 偏函数
      • 3.3. 面向对象高级编程
        • 3.3.1. 给类绑定一个方法
        • 3.3.2. slot
        • 3.3.3. @property
        • 3.3.4. 多重继承
        • 3.3.5. 定制类
        • 3.3.6. 枚举
        • 3.3.7. 元类
      • 3.4. 异步IO
        • 3.4.1. 协程
        • 3.4.2. async/await
        • 3.4.3. 同步和异步对比
        • 3.4.4. aiohttp
  • Cookbook学习记录
    • 1. cookbook基础
      • 1.1. 数据结构和算法
        • 1.1.1. 解压序列赋值给多个变量
        • 1.1.2. 解压可迭代对象赋值给多个变量
        • 1.1.3. 保留最后 N 个元素
        • 1.1.4. 查找最大或最小的 N 个元素
        • 1.1.5. 实现一个优先级队列
        • 1.1.6. 字典中的键映射多个值
        • 1.1.7. 字典排序
        • 1.1.8. 查找两字典的相同点
        • 1.1.9. 删除序列相同元素并保持顺序
        • 1.1.10. 命名切片
        • 1.1.11. 序列中出现次数最多的元素
        • 1.1.12. 通过某个关键字排序一个字典列表
        • 1.1.13. 通过某个字段将记录分组
        • 1.1.14. 过滤序列元素
        • 1.1.15. 从字典中提取子集
        • 1.1.16. 映射名称到序列元素
        • 1.1.17. 转换并同时计算数据
        • 1.1.18. 合并多个字典或映射
      • 1.2. 字符串和文本
        • 1.2.1. 使用多个界定符分割字符串
        • 1.2.2. 字符串开头或结尾匹配
        • 1.2.3. 字符串匹配和搜索
        • 1.2.4. 字符串搜索和替换
        • 1.2.5. 字符串忽略大小写的搜索替换
        • 1.2.6. 将Unicode文本标准化
        • 1.2.7. 删除字符串中不需要的字符
        • 1.2.8. 审查清理文本字符串
        • 1.2.9. 字符串对齐
        • 1.2.10. 合并字符串
        • 1.2.11. 字符串中插入变量
        • 1.2.12. 以指定列宽格式化字符串
        • 1.2.13. 在字符串中处理html和xml
        • 1.2.14. 字符串令牌解析
      • 1.3. 数字日期时间
        • 1.3.1. 数字的四舍五入
        • 1.3.2. 执行精确的浮点数运算
        • 1.3.3. 数字的格式化输出
        • 1.3.4. 二八十六进制整数
        • 1.3.5. 字节到大整数的打包与解包
        • 1.3.6. 复数的数学运算
        • 1.3.7. 无穷大与NaN
        • 1.3.8. 分数运算
        • 1.3.9. 大型数组运算
        • 1.3.10. 随机选择
        • 1.3.11. 基本的日期与时间转换
        • 1.3.12. 计算最后一个周五的日期
        • 1.3.13. 计算当前月份的日期范围
        • 1.3.14. 字符串转换为日期
        • 1.3.15. 结合时区的日期操作
    • 2. cookbook进阶
      • 2.1. 迭代器与生成器
        • 2.1.1. 手动遍历迭代器
        • 2.1.2. 代理迭代
        • 2.1.3. 使用生成器创建新的迭代模式
        • 2.1.4. 实现迭代器协议
        • 2.1.5. 反向迭代
        • 2.1.6. 带有外部状态的生成器函数
        • 2.1.7. 迭代器切片
        • 2.1.8. 跳过可迭代对象的开始部分
        • 2.1.9. 排列组合的迭代
        • 2.1.10. 序列上索引值迭代
        • 2.1.11. 同时迭代多个序列
        • 2.1.12. 不同集合上元素的迭代
        • 2.1.13. 创建数据处理管道
        • 2.1.14. 展开嵌套的序列
        • 2.1.15. 顺序迭代合并后的排序迭代对象
      • 2.2. 文件和IO
        • 2.2.1. 读写文本数据
        • 2.2.2. 使用其他分隔符或行终止符打印
        • 2.2.3. 读写字节数据
        • 2.2.4. 字符串的I/O操作
        • 2.2.5. 读写压缩文件
        • 2.2.6. 固定大小记录的文件迭代
        • 2.2.7. 读取二进制数据到可变缓冲区中
        • 2.2.8. 内存映射的二进制文件
        • 2.2.9. 文件路径名的操作
        • 2.2.10. 测试文件是否存在
        • 2.2.11. 获取文件夹中的文件列表
        • 2.2.12. 增加或改变已打开文件的编码
        • 2.2.13. 将字节写入文本文件
        • 2.2.14. 将文件描述符包装成文件对象
        • 2.2.15. 创建临时文件和文件夹
      • 2.3. 数据编码和处理
        • 2.3.1. 读写CSV数据
        • 2.3.2. 读写JSON数据
        • 2.3.3. 解析简单的XML数据
        • 2.3.4. 增量式解析大型XML文件
        • 2.3.5. 将字典转换为XML
        • 2.3.6. 解析和修改XML
        • 2.3.7. 利用命名空间解析XML文档
        • 2.3.8. 与关系型数据库的交互
        • 2.3.9. 编码和解码十六进制数
        • 2.3.10. 编码解码Base64数据
      • 2.4. 函数
        • 2.4.1. 可接受任意数量参数的函数
        • 2.4.2. 只接受关键字参数的函数
        • 2.4.3. 给函数参数增加元信息
        • 2.4.4. 返回多个值的函数
        • 2.4.5. 定义有默认参数的函数
        • 2.4.6. 定义匿名或内联函数
        • 2.4.7. 匿名函数捕获变量值
        • 2.4.8. 减少可调用对象的参数个数
        • 2.4.9. 将单方法的类转换为函数
        • 2.4.10. 带额外状态信息的回调函数
        • 2.4.11. 内联回调函数
        • 2.4.12. 访问闭包中定义的变量
      • 2.5. 类和对象
        • 2.5.1. 改变对象的字符串显示
        • 2.5.2. 自定义字符串显示
        • 2.5.3. 让对象支持上下文管理协议
        • 2.5.4. 创建大量对象时节省内存方法
        • 2.5.5. 在类中封装属性名
        • 2.5.6. 创建可管理的属性
        • 2.5.7. 调用父类方法
        • 2.5.8. 子类中扩展property
        • 2.5.9. 创建新的类或实例属性
        • 2.5.10. 使用延迟计算属性
        • 2.5.11. 简化数据结构的初始化
        • 2.5.12. 定义接口或者抽象基类
        • 2.5.13. 实现自定义容器
        • 2.5.14. 代理属性
        • 2.5.15. 在类中定义多个构造器
        • 2.5.16. 利用Mixins扩展类功能
        • 2.5.17. 实现状态对象或者状态机
        • 2.5.18. 通过字符串调用对象方法
        • 2.5.19. 实现访问者模式
        • 2.5.20. 不用递归实现访问者模式
        • 2.5.21. 让类支持比较操作
      • 2.6. 元类
        • 2.6.1. 在函数上添加包装器
        • 2.6.2. 解除一个装饰器
        • 2.6.3. 带可选参数的装饰器
        • 2.6.4. 利用装饰器强制函数上的类型检查
        • 2.6.5. 将装饰器定义为类的一部分
        • 2.6.6. 为类和静态方法提供装饰器
        • 2.6.7. 装饰器为被包装函数增加参数
        • 2.6.8. 使用装饰器扩充类的功能
        • 2.6.9. 使用元类控制实例的创建
        • 2.6.10. 定义有可选参数的元类
        • 2.6.11. *args和**kwargs的强制参数签名
        • 2.6.12. 在类上强制使用编程规约
        • 2.6.13. 以编程方式定义类
        • 2.6.14. 利用函数注解实现方法重载
        • 2.6.15. 避免重复的属性方法
        • 2.6.16. 定义上下文管理器的简单方法
      • 2.7. 模块和包
        • 2.7.1. 构建一个模块的层级包
        • 2.7.2. 控制模块被全部导入的内容
        • 2.7.3. 使用相对路径名导入包中子模块
        • 2.7.4. 将模块分割成多个文件
        • 2.7.5. 重新加载模块
        • 2.7.6. 运行目录或压缩文件
        • 2.7.7. 将文件夹加入到sys.path
        • 2.7.8. 通过字符串名导入模块
      • 2.8. WEB编程
        • 2.8.1. 作为客户端与HTTP服务交互
        • 2.8.2. 创建TCP服务器
        • 2.8.3. 创建UDP服务器
        • 2.8.4. 通过CIDR地址生成对应的IP地址集
        • 2.8.5. 通过XML-RPC实现简单的远程调用
      • 2.9. 并发编程
        • 2.9.1. 启动与停止线程
        • 2.9.2. 判断线程是否已经启动
        • 2.9.3. 线程间通信
        • 2.9.4. 线程访问加锁
        • 2.9.5. 防止死锁的加锁机制
        • 2.9.6. 保存线程的状态信息
        • 2.9.7. 创建一个线程池
        • 2.9.8. 定义一个Actor任务
        • 2.9.9. 实现消息发布订阅模式
        • 2.9.10. 使用生成器代替线程
        • 2.9.11. 多个线程队列轮询
      • 2.10. 脚本编程
        • 2.10.1. 通过重定向/管道/文件接受输入
        • 2.10.2. 终止程序并给出错误信息
        • 2.10.3. 解析命令行选项
        • 2.10.4. 运行时弹出密码输入提示
        • 2.10.5. 获取终端的大小
        • 2.10.6. 执行外部命令并获取它的输出
        • 2.10.7. 复制或者移动文件和目录
        • 2.10.8. 创建和解压归档文件
        • 2.10.9. 通过文件名查找文件
        • 2.10.10. 读取配置文件
        • 2.10.11. 给简单脚本增加日志功能
        • 2.10.12. 给函数库增加日志功能
        • 2.10.13. 实现一个计时器
        • 2.10.14. 限制cpu和mem
        • 2.10.15. 启动一个WEB浏览器
      • 2.11. 测试调试
        • 2.11.1. 在单元测试中测试异常情况
        • 2.11.2. 将测试输出用日志记录到文件中
        • 2.11.3. 忽略或期望测试失败
        • 2.11.4. 处理多个异常
        • 2.11.5. 捕获所有异常
        • 2.11.6. 创建自定义异常
        • 2.11.7. 捕获异常后抛出另外的异常
        • 2.11.8. 重新抛出被捕获的异常
        • 2.11.9. 输出警告信息
        • 2.11.10. 调试基本的程序崩溃错误
    • 3. cookbook高级
My_Study_Python
  • 我自己的python学习笔记
  • 在 GitHub 上编辑
下一页

我自己的python学习笔记

PYTHON学习笔记

  • python入门
    • 1. python基础
      • 1.1. 环境准备
      • 1.2. 运行第一个程序
      • 1.3. Python基础
      • 1.4. 函数
    • 2. python进阶
      • 2.1. 模块
      • 2.2. 面向对象编程
      • 2.3. 错误调试测试
      • 2.4. IO编程
      • 2.5. 进程线程
      • 2.6. 正则表达式
      • 2.7. 常见模块
      • 2.8. 网络编程
      • 2.9. 邮件收发
      • 2.10. 数据库
    • 3. python高级
      • 3.1. 高级特性
      • 3.2. 函数式编程
      • 3.3. 面向对象高级编程
      • 3.4. 异步IO
  • Cookbook学习记录
    • 1. cookbook基础
      • 1.1. 数据结构和算法
      • 1.2. 字符串和文本
      • 1.3. 数字日期时间
    • 2. cookbook进阶
      • 2.1. 迭代器与生成器
      • 2.2. 文件和IO
      • 2.3. 数据编码和处理
      • 2.4. 函数
      • 2.5. 类和对象
      • 2.6. 元类
      • 2.7. 模块和包
      • 2.8. WEB编程
      • 2.9. 并发编程
      • 2.10. 脚本编程
      • 2.11. 测试调试
    • 3. cookbook高级
下一页

© 版权所有 2018, zhaojiedi1992@outlook.com。 版本 5a311cb1.

利用 Sphinx 构建,使用的 主题 由 Read the Docs 开发.