5 刘知杭 静态类型的Python静态类型的Python Lyzh(刘知杭) 目录 CONTENTS 有关类型的概念 使用mypy对Python源 代码进行静态分析 代数数据类型 拓展知识 关于类型的一些基本概念 有类型不等于有类型系统 动态语言类型化的必要性 不久前的一个案例 正文 类型的概念 CPython定义了PyObject这个 结构体作为对象头。 CPython中的类型,是指在对 象头中指向类型元信息的指针。 象头中指向类型元信息的指针。 CPython有类型,但CPython没有类型系统。这就是CsPython中诸多问题的由来。 类型系统是什么? 类型系统(type system)的基本目标是防止程序在运行时发生类型错误。当且仅当语言运行时 不存在任何形式的类型错误,那么它就是sound的。soundness是类型系统研究的重要目标。 类型系统(type system)是一种编译期(Compile-time)的类型推导检查规则。 ime)的类型推导检查规则。 类型系统就是一种轻量级的形式化方法,它通常被植入编译器或程序分析器中进行自动校验。 从而让那些不熟悉底层理论的程序员也可以使用它们。 这类轻量级技术中还包括模型检测(Model checking),运行时验证(Runtime verification)和类型系统(Type system)等等。其中类型系统最流行,发展最完善。 在计算机科学中,形式化方法(Formal0 码力 | 42 页 | 6.87 MB | 1 年前3
Django、Vue 和Element UI 前后端原理论述这是一篇你真正开始前需要查阅的文章。 本文介绍了前后端工作原理,前后端搭建的流程、搭建过程中需要用到的技术以及 开发环境版本。 一、前后端如何工作 Django、Vue 和 Element UI 前后 端原理论述 作者:M&T. 2 《51 测试天地》七十四 www.51testing.com 后端开发(Django+Rest Framework+MySQL): Django 负责处理 HTTP 接口进行数据传输和交互,从而实现一个完整的 Web 应用。 3 《51 测试天地》七十四 www.51testing.com 二、搭建流程 2.1 后端搭建流程 安装相关包->创建工程->后端依赖(pipenv)创建虚拟环境->后端服务配置启动->后 端创建子应用->后端 Rest Framework->数据库配置 简要说明: 安装相关包:在开始之前,首先需要安装 Python 和 pip,然后安装 创建工程:使用 Django 的命令行工具创建 Django 项目,例如:django-admin startproject projectname。 后端依赖(pipenv)创建虚拟环境:建议使用 pipenv 来创建和管理虚拟环境,以便 隔离项目的依赖和环境。 后端服务配置启动:在虚拟环境下,通过 Django 的 manage.py 启动服务,例如:python manage.py runserver。0 码力 | 61 页 | 6.84 MB | 1 年前3
Hello 算法 1.1.0 Python版3.1 数据结构分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.2 基本数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.3 数字编码 * . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 免歧义。 ‧ 当涉及编程语言之间不一致的名词时,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 第 0 章 前言 hello‑algo.com 5 """ 标题注释,用于标注函数、类、测试样例等""" # 内容注释,用于详解代码 """ 多行 注释0 码力 | 364 页 | 18.42 MB | 1 年前3
Hello 算法 1.0.0 Python版3.1 数据结构分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.2 基本数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.3 数字编码 * . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 加粗,这类文字值得特别关注。 ‧ 当涉及编程语言之间不一致的名词时,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 """ 标题注释,用于标注函数、类、测试样例等""" # 内容注释,用于详解代码 """ 多行 第 0 章 前言 hello‑algo.com 5 注释0 码力 | 362 页 | 17.54 MB | 1 年前3
Hello 算法 1.0.0b4 Python版3.1. 数据结构分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 3.2. 基本数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.3. 数字编码 * . . . . 本书主要内容包括: ‧ 复杂度分析:数据结构和算法的评价维度,算法效率的评估方法。时间复杂度、空间复杂度的推算方 法、常见类型、示例等。 ‧ 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、散列表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 标注,以避免歧义。 ‧ 涉及到编程语言之间不一致的名词,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 """ 标题注释,用于标注函数、类、测试样例等""" # 内容注释,用于详解代码 """ 多行 注释 """ 0.2.2. 在动画图解中高效学习0 码力 | 329 页 | 27.34 MB | 1 年前3
Hello 算法 1.0.0b5 Python版3.1 数据结构分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.2 基本数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.3 数字编码 * . . . . 本书主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度、空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型,数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤、 关注。 ‧ 当涉及到编程语言之间不一致的名词时,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 """ 标题注释,用于标注函数、类、测试样例等""" # 内容注释,用于详解代码 """ 多行 注释 """ 0.2.2 在动画图解中高效学习0 码力 | 361 页 | 30.64 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Python 版3.1 数据结构分类 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.2 基本数据类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.3 数字编码 * . . . . 本书的主要内容如图 0‑1 所示。 ‧ 复杂度分析:数据结构和算法的评价维度与方法。时间复杂度和空间复杂度的推算方法、常见类型、示 例等。 ‧ 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 免歧义。 ‧ 当涉及编程语言之间不一致的名词时,本书均以 Python 为准,例如使用 None 来表示“空”。 ‧ 本书部分放弃了编程语言的注释规范,以换取更加紧凑的内容排版。注释主要分为三种类型:标题注 释、内容注释、多行注释。 第 0 章 前言 www.hello‑algo.com 5 """ 标题注释,用于标注函数、类、测试样例等""" # 内容注释,用于详解代码 """ 多行0 码力 | 364 页 | 18.43 MB | 10 月前3
Python3 基础教程 - 廖雪峰........................................................................................... 32 数据类型和变量 ............................................................................................... 总的来说,Python 的哲学就是简单优雅,尽量写容易看明白的代码,尽 量写少的代码。如果一个资深程序员向你炫耀他写的晦涩难懂、动不动 就几万行的代码,你可以尽情地嘲笑他。 那 Python 适合开发哪些类型的应用呢? Python3 基础教程【完整版】 http://www.yeayee.com/ 10/531 首选是网络应用,包括网站、后台服务等等; 其次是许多日常需要的小工具,包括系统管理员需要的脚本任务等等; 秒,慢了 100 倍,但由于 网络更慢,需要等待 1 秒,你想,用户能感觉到 1.001 秒和 1.1 秒的区 别吗?这就好比 F1 赛车和普通的出租车在北京三环路上行驶的道理一 样,虽然 F1 赛车理论时速高达 400 公里,但由于三环路堵车的时速只 有 20 公里,因此,作为乘客,你感觉的时速永远是 20 公里。 Python3 基础教程【完整版】 http://www.yeayee.com/0 码力 | 531 页 | 5.15 MB | 1 年前3
WeRoBot 1.13.1 微信公众号开发框架文档是一个微信公众号开发框架。 入门 Hello World 消息处理 使用 Session 记录用户状态 创建自定义菜单 消息加解密 部署 在独立服务器上部署 在SAE上部署 Handler 类型过滤 robot.key_click —— 回应自定义菜单 robot.filter —— 回应有指定文本的消息 Session 开启/关闭 Session 修改 Handler 以使用 Session 通过`add_handler`添加handler def echo(message): return 'Hello World!' robot.add_handler(echo) 类型过滤 在大多数情况下, 一个 Handler 并不能处理所有类型的消息。幸运的是, WeRoBot 可以帮你过滤收到的消息。 只想处理被新用户关注的消息?: import werobot robot = werobot.We Event 两种类型,针对两种类型的 请求分别有不同的 Handler。 修饰符 类型 robot.text 文本 (Message) robot.image 图像 (Message) robot.location 位置 (Message) robot.link 链接 (Message) robot.voice 语音 (Message) robot.unknown 未知类型 (Message)0 码力 | 105 页 | 76.25 KB | 1 年前3
Python 标准库参考指南 3.10.15 site 模块添加的常量 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4 内置类型 31 4.1 逻辑值检测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.4 数字类型 --- int, float, complex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.4.1 整数类型的按位运算 . . . . . . . . . . . . . . . . . . . . . 4.2 整数类型的附加方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.4.3 浮点类型的附加方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.4.4 数字类型的哈希运算0 码力 | 2207 页 | 10.45 MB | 10 月前3
共 164 条
- 1
- 2
- 3
- 4
- 5
- 6
- 17













