Python与高中技术课程教学 以声音制造为例 罗丹 luodan@i.pkuschool.edu.cn 目录 CONTENTS 案例教学设计思路 Python 的角色 中学STEAM课程设计 思考 案例设计背景 北大附中技术课程设置模式: 1. 不设置独立的信息技术和 通用技术课程 2. 课程设计以项目制为主 3. 教师享有较大的课程设计 自主权 案例设计背景 案例教学设计思路 1. 结合教师个人经历,学校课程设计规 划,教育部颁布的课程标准制定教学 划,教育部颁布的课程标准制定教学 内容和方式 2. 融合中学主干学科知识,明确研究对 象,训练学生研究性学习的能力 3. 打通中学学科知识和大学专业知识之 间的屏障,帮助学生拓展视野,制定 未来职业规划 声音制造教学设计 该项目以研究声音信号为核心任务,学生通过 1. 了解声音 2. 分析声音 3. 制造声音 4. 处理声音 5. 传播声音 五大研究模块来全面和深入地了解与声音信号相 关的工程物理知识和数学模型并进行相关的实践0 码力 | 12 页 | 731.76 KB | 1 年前3
Django、Vue 和Element UI 前后端原理论述print(r.text) 19 《51 测试天地》七十四 www.51testing.com 通过运行程序,我们可以很清楚的看到,两条数据同一个接口,均请求成功。 总结 小编通过两个简单的案例,进行介绍了Yaml在我们自动化测试过程中如何存储数据, 通过 Python 进行读取 Yaml 文件数据,以及在自动化测试过程中参数化的数据如何在 Yaml 文件中存储且如何通过运行参数化模式 requests-mock 来模拟这 两个请求,最后通过 requests 进行发送请求并通过 pytest.raises 进行判断是否存在异常操 作,如果存在操作,则说明我们代码没有问题。 总结 小编通过简单的两个案例列举了 requests-mock 的简单用法,并且简单介绍了 requests-mock 的库作用,不仅仅可以测试一些简单的 api,还可以模拟测试接口异常情况, 当然该库的方法不仅仅只有这么 测试天地》七十四 www.51testing.com 基于银行信贷领域的长链路业务测 试数据快速构造方法研究与应用 ◆作者:王海林 一、引言 随着银行数字化转型的不断深入,对信贷领域的测试工作提出了更高的标准和要求, 如何在高效完成测试任务的同时确保测试质量就成了一个亟待解决的难题。有实践研究 表明,在具体测试过程中往往大量的时间精力都是耗费在测试数据准备工作上面,能否 尽量减少这部分耗费0 码力 | 61 页 | 6.84 MB | 1 年前3
5 刘知杭 静态类型的Python CONTENTS 有关类型的概念 使用mypy对Python源 代码进行静态分析 代数数据类型 拓展知识 关于类型的一些基本概念 有类型不等于有类型系统 动态语言类型化的必要性 不久前的一个案例 正文 类型的概念 CPython定义了PyObject这个 结构体作为对象头。 CPython中的类型,是指在对 象头中指向类型元信息的指针。 CPython有类型,但CPython 类型系统是什么? 类型系统(type system)的基本目标是防止程序在运行时发生类型错误。当且仅当语言运行时 不存在任何形式的类型错误,那么它就是sound的。soundness是类型系统研究的重要目标。 类型系统(type system)是一种编译期(Compile-time)的类型推导检查规则。 类型系统就是一种轻量级的形式化方法,它通常被植入编译器或程序分析器中进行自动校验。 返回值为None,以及NoReturn类型 正文 Callable可调用类型 正文 Final常量! 正文 TypeAlias类型别名 正文 类成员注释 简单的代数数据类型 作为mypy的凭依 像研究代数一样去研究类型之间的关系 待重写 简单的代数数据类型 当我们在计算类型的大小时,我们在计算什么? 我们通过将类型视为集合来定义类型的大小,并计算可能的元素数量 比如说,因为有两个可能的布尔值——True和False,因此0 码力 | 42 页 | 6.87 MB | 1 年前3
Hello 算法 1.1.0 Python版面,这些字符集一般 只定义了特定语言的字符,无法在多语言环境下正常工作。另一方面,同一种语言存在多种字符集标准,如 果两台计算机使用的是不同的编码标准,则在信息传递时就会出现乱码。 那个时代的研究人员就在想:如果推出一个足够完整的字符集,将世界范围内的所有语言和符号都收录其 中,不就可以解决跨语言环境和乱码问题了吗?在这种想法的驱动下,一个大而全的字符集 Unicode 应运而 生。 Unicode 近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一 部分研究人员和黑客则致力于寻找哈希算法的安全性问题。表 6‑2 展示了在实际应用中常见的哈希算法。 ‧ MD5 和 SHA‑1 已多次被成功攻击,因此它们被各类安全应用弃用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的哈希算法之一,仍未出现成功的攻击案例,因此常用在各类安全 应用与协议中。 ‧ SHA‑3 post_order(root=root.left) post_order(root=root.right) res.append(root.val) Tip 深度优先搜索也可以基于迭代实现,有兴趣的读者可以自行研究。 图 7‑11 展示了前序遍历二叉树的递归过程,其可分为“递”和“归”两个逆向的部分。 1.“递”表示开启新方法,程序在此过程中访问下一个节点。 2.“归”表示函数返回,代表当前节点已经访问完毕。0 码力 | 364 页 | 18.42 MB | 1 年前3
Hello 算法 1.0.0b5 Python版面,这些字符集一般只定 义了特定语言的字符,无法在多语言环境下正常工作。另一方面,同一种语言也存在多种字符集标准,如果 两台电脑安装的是不同的编码标准,则在信息传递时就会出现乱码。 那个时代的研究人员就在想:如果推出一个足够完整的字符集,将世界范围内的所有语言和符号都收录其 中,不就可以解决跨语言环境和乱码问题了吗?在这种想法的驱动下,一个大而全的字符集 Unicode 应运而 生。 近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一 部分研究人员和黑客则致力于寻找哈希算法的安全性问题。表 6‑2 展示了在实际应用中常见的哈希算法。 ‧ MD5 和 SHA‑1 已多次被成功攻击,因此它们被各类安全应用弃用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的哈希算法之一,仍未出现成功的攻击案例,因此常被用在各类安 全应用与协议中。 ‧ post_order(root=root.left) post_order(root=root.right) res.append(root.val) � 深度优先搜索也可以基于迭代实现,有兴趣的同学可以自行研究。 图 7‑11 展示了前序遍历二叉树的递归过程,其可分为“递”和“归”两个逆向的部分。 1.“递”表示开启新方法,程序在此过程中访问下一个节点。 2.“归”表示函数返回,代表当前节点已经访问完毕。0 码力 | 361 页 | 30.64 MB | 1 年前3
Hello 算法 1.0.0 Python版面,这些字符集一般 只定义了特定语言的字符,无法在多语言环境下正常工作。另一方面,同一种语言存在多种字符集标准,如 果两台计算机使用的是不同的编码标准,则在信息传递时就会出现乱码。 那个时代的研究人员就在想:如果推出一个足够完整的字符集,将世界范围内的所有语言和符号都收录其 中,不就可以解决跨语言环境和乱码问题了吗?在这种想法的驱动下,一个大而全的字符集 Unicode 应运而 生。 近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一 部分研究人员和黑客则致力于寻找哈希算法的安全性问题。表 6‑2 展示了在实际应用中常见的哈希算法。 ‧ MD5 和 SHA‑1 已多次被成功攻击,因此它们被各类安全应用弃用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的哈希算法之一,仍未出现成功的攻击案例,因此常用在各类安全 应用与协议中。 ‧ SHA‑3 post_order(root=root.left) post_order(root=root.right) res.append(root.val) � 深度优先搜索也可以基于迭代实现,有兴趣的读者可以自行研究。 图 7‑11 展示了前序遍历二叉树的递归过程,其可分为“递”和“归”两个逆向的部分。 1.“递”表示开启新方法,程序在此过程中访问下一个节点。 2.“归”表示函数返回,代表当前节点已经访问完毕。0 码力 | 362 页 | 17.54 MB | 1 年前3
Hello 算法 1.0.0b4 Python版适合作为第一章的内容。然而,当我们讨论某个数据结构或算法的特点时,我们难以避免要分析其运行速度 和空间使用情况。因此,在深入学习数据结构与算法之前,建议读者先对复杂度建立初步的了解,并能够完 成简单案例的复杂度分析。 2.2. 时间复杂度 2.2.1. 统计算法运行时间 运行时间可以直观且准确地反映算法的效率。然而,如果我们想要准确预估一段代码的运行时间,应该如何 操作呢? 1. 确定运 的输入数据映射到恒定长度的哈希值。 近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一 部分研究人员和黑客则致力于寻找哈希算法的安全性问题。直至目前: ‧ MD5 和 SHA‑1 已多次被成功攻击,因此它们被各类安全应用弃用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的哈希算法之一,仍未出现成功的攻击案例,因此常被用在各类安 全应用与协议中。 ‧ SHA‑3 相较 ? 为节点数量。 空间复杂度:在最差情况下,即树退化为链表时,递归深度达到 ? ,系统占用 ?(?) 栈帧空间。 � 我们也可以不使用递归,仅基于迭代实现前、中、后序遍历,有兴趣的同学可以自行研究。 下图展示了前序遍历二叉树的递归过程,其可分为“递”和“归”两个逆向的部分: 1.“递”表示开启新方法,程序在此过程中访问下一个节点。 2.“归”表示函数返回,代表当前节点已经访问完毕。 70 码力 | 329 页 | 27.34 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Python 版面,这些字符集一般 只定义了特定语言的字符,无法在多语言环境下正常工作。另一方面,同一种语言存在多种字符集标准,如 果两台计算机使用的是不同的编码标准,则在信息传递时就会出现乱码。 那个时代的研究人员就在想:如果推出一个足够完整的字符集,将世界范围内的所有语言和符号都收录其 中,不就可以解决跨语言环境和乱码问题了吗?在这种想法的驱动下,一个大而全的字符集 Unicode 应运而 生。 Unicode 近一个世纪以来,哈希算法处在不断升级与优化的过程中。一部分研究人员努力提升哈希算法的性能,另一 部分研究人员和黑客则致力于寻找哈希算法的安全性问题。表 6‑2 展示了在实际应用中常见的哈希算法。 ‧ MD5 和 SHA‑1 已多次被成功攻击,因此它们被各类安全应用弃用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的哈希算法之一,仍未出现成功的攻击案例,因此常用在各类安全 应用与协议中。 ‧ SHA‑3 post_order(root=root.left) post_order(root=root.right) res.append(root.val) Tip 深度优先搜索也可以基于迭代实现,有兴趣的读者可以自行研究。 图 7‑11 展示了前序遍历二叉树的递归过程,其可分为“递”和“归”两个逆向的部分。 1.“递”表示开启新方法,程序在此过程中访问下一个节点。 2.“归”表示函数返回,代表当前节点已经访问完毕。0 码力 | 364 页 | 18.43 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Python 版面,這些字符集一般 只定義了特定語言的字元,無法在多語言環境下正常工作。另一方面,同一種語言存在多種字符集標準,如 果兩臺計算機使用的是不同的編碼標準,則在資訊傳遞時就會出現亂碼。 那個時代的研究人員就在想:如果推出一個足夠完整的字符集,將世界範圍內的所有語言和符號都收錄其 中,不就可以解決跨語言環境和亂碼問題了嗎?在這種想法的驅動下,一個大而全的字符集 Unicode 應運而 生。 Unicode 近一個世紀以來,雜湊演算法處在不斷升級與最佳化的過程中。一部分研究人員努力提升雜湊演算法的效能, 另一部分研究人員和駭客則致力於尋找雜湊演算法的安全性問題。表 6‑2 展示了在實際應用中常見的雜湊演 算法。 ‧ MD5 和 SHA‑1 已多次被成功攻擊,因此它們被各類安全應用棄用。 ‧ SHA‑2 系列中的 SHA‑256 是最安全的雜湊演算法之一,仍未出現成功的攻擊案例,因此常用在各類安 全應用與協議中。 post_order(root=root.left) post_order(root=root.right) res.append(root.val) Tip 深度優先搜尋也可以基於迭代實現,有興趣的讀者可以自行研究。 圖 7‑11 展示了前序走訪二元樹的遞迴過程,其可分為“遞”和“迴”兩個逆向的部分。 1.“遞”表示開啟新方法,程式在此過程中訪問下一個節點。 2.“迴”表示函式返回,代表當前節點已經訪問完畢。0 码力 | 364 页 | 18.74 MB | 10 月前3
Python 标准库参考指南 3.8.20 collections --- 容器数据类型 197 The Python Library Reference, 发布 3.8.20 ChainMap 例子和方法 这一节提供了多个使用链映射的案例。 模拟 Python 内部 lookup 链的例子 import builtins pylookup = ChainMap(locals(), globals(), vars(builtins)) counter) 中的元素。类似于dict.update() 但是是加上 而非替换。另外,可迭代对象应当是一个元素序列,而不是一个 (key, value) 对的序列。 Counter 对象的常用案例 sum(c.values()) # total of all counts c.clear() # reset all counts list(c) # list unique elements 条件是最小调度时间。当一个事件将其他事件排入执行计划时,它们的调试时间向未来方向延长,这样 它们可方便地入堆。因此,堆结构很适宜用来实现调度器,我的 MIDI 音序器就是用的这个:-)。 用于实现调度器的各种结构都得到了充分的研究,堆是非常适宜的一种,因为它们的速度相当快,并且 几乎是恒定的,最坏的情况与平均情况没有太大差别。虽然还存在其他总体而言更高效的实现方式,但 其最坏的情况却可能非常糟糕。 堆在大磁盘排序中也非常有0 码力 | 1927 页 | 9.69 MB | 9 月前3
共 60 条
- 1
- 2
- 3
- 4
- 5
- 6













