Composing Programs是一个免费的编程导论在线课程。本课程以Python3为教学语言但无需Python基础,融入了SICP的精髓:抽象方法、编程范式以及管理大型程序的复杂度,是同时学习Python和编程导论的不二之选。
(link : http://composingprograms.com)
摘要:Python有很多库可以支持并行计算。 和`multiprocessing`库有着类似的API,但是前者只是建立单个线程,后者对多进程封装得更完善,对多核CPU的支持更好。更多可阅读 "Python标准库08 多线程与同步 (threading包)" , "Python标准库10 多进...
阅读全文
摘要:Python中自定义迭代类型,需要包含自定义的 方法。 方法能够返回迭代类型的下一项,并在迭代结束时提示编译器: 。 如果一个对象的 方法被调用后能够返回一个迭代对象,那么这个对象就是可迭代(iterable)。 for语句也可以用于列举。 编译器首先会检查 是否是可迭代对象,然后...
阅读全文
摘要:定义实例 一个实例本质上是一个字典,里面包含的是: “方法名”-“函数”对 。 定义类 栗子 最后一句locals()返回一个当前框架下的字典。 Account类可使用下句生成: 子类关于继承的实现:
阅读全文
摘要:类的定义方法 class Account: def __init__(self, account_holder): 必须有 函数,该函数无需return self.balance = 0 self.holder = account_holder def deposit(self, ...
阅读全文
摘要:1. Python3可以使用 声明父级框架的变量 2. Python中可以使用字典将多个函数绑定在同一个函数名上
阅读全文
摘要:原文第2章第3节 分解序列(sequence unpacking) The pattern of binding multiple names to multiple values in a fixed length sequence。 序列中各值赋予不同变量名。 如果执行下列代码:...
阅读全文
摘要:原文第2章第2节 数据抽象(Data Abstraction) The general technique of isolating the parts of a program that deal with how data are represented from the parts ...
阅读全文
摘要:原文第1章第6节Python允许定义一个函数返回一个代数式,同样的,也可以定义一个函数去引用其他函数。 引用其他函数的函数就是 高阶函数 。 Lexical scope(词法定界)一个函数只能引用有限范围内的函数。其范围包括:定义本函数的同级框架,以及父级框架。 "TechTarget中国原创:...
阅读全文
摘要:原文第1章第5节 1 使用 声明方法 函数会先执行 函数,然后与 命令的指标进行对比,如果不符就会报错。 2 使用 函数 函数 在声明时使用三个引号提供了一份简单的说明。在编译器中执行 函数皆可获得这段说明(按Q退出)。同时,这份说明也指出了特定值下的输出值。利用 函数...
阅读全文