Advertisement

读书笔记:“Python Programming: An Introduction to Computer Science”

阅读量:

读 Python Programming:
An Introduction to Computer Science
笔记
该书作者是
John M. Zelle
书籍版本: 1.0rc2

2 Wirting Simple Programs

2.1 The Software Development Process

此小结,作者简介清晰的介绍了一个完整的程序的开发流程图。
(学到核心之一,无论多难多复杂的东西可以先将问题简化,然后再攻克最难的地方。)

Formulate Requirements
前期的摸索,更加侧重于真实问题本身。
尽可能理解和掌握问题的起源、发展、演化,
通过逻辑的思维方式确定在编程之前可以准确描述
求解思路。

Determine Specifications:
相比第一层在思维领域战斗,这一层更关注些具体细节。
如整体程序需要哪些输入,以及最终结果呈现:输出。
如输入到输出之间的依赖关系,是否可以利用已有函数定义或者
给出独一无二的逻辑思维路线(前后关系)。

Create a Design:
一、二两层清晰之后,在此基础上尝试建立整体的架构。
同时尽可能满足特定的需要,如二层的输出内容。

Implement the Design:
将1、二、三的东西结合选择的语言翻译成相应的符合
该语言规则的源代码,比如Python 语言。

Test/Debug the Program:
容错!程序已经写完,可能第一次就直接运行。
但是,细节上忽律可能造成最终结果的明显错误。
有错咋改,
无措咋勉。

Maintain the Program。
满足客户的需求,代码增减,功能的优化。。。

2.2 Example Program: Temperature Converter

该小结是对上一小节的内容进行举例。
1,真实物理世界存在不同单位转换,其中之一是热力学领域
中温度单位。常见单位如摄氏度和华氏温度,事实上你可以定义任何单位,但是背后的道理只有一个是描述系统的冷热的一个客观物理量。因此,这个一就是二者的转换基础。转换成数学语言就是:
F = True System Thermal Properties = 9 * C / 5 + 32
So, F = 9 * C / 5 + 32

2,IPO(input, Process, Output)
C --> F
F --> C

3, Creat a Design
架构:
提示 C – > F
还是
F --> C 呢?

相应数据读入()
选定相应函数
输出

提示:请输入反馈GOOD or BAD
记录
以便以后修改
4,source code
。。。。
5, run
。。。
6,maintain
。。。

2.3 Elements of Programs

进一步学习Python的一些基础东东。
1. Names
想起老子的道德经中第一句话:
道可道,非常道;名可名,非常名。
虽然大家都读同一本书但是理解的程度不同。
老子这句话很有提示性质。

个人觉得作者水平很高,第一点先说names就已经把握了一半以上的核心。
从普通到抽象的东西都需要一个东东来说明,这就是names。
如:
Modules: covert
Function: main
values: celsius / fahrenheit

而Python语言可利用letter或者_来命名。
大小写有区别。
尽可能描述其功能或者道。

Python语言已经定义的names:

and, assert break class continue def del elif else except
exec finally for from global if import in is lambda not
or pass print raise return try while yield

2 Expressions
有了上小节的名还是不够的,那只是静态的东西,所以还需要阳光。
names + symbols ---->>> 构成多种多样/复杂的动态意思。将names链接起来,一有了,2,3还远吗???

x 一个名 32 一个名 = 一个符号
x = 32 一个动作; x == 32 又一个动作;
(x = 32)==32 又是一个动作。。。

print 一个名 x 一个名
print (x) 则是一个动作。

Python所提供的一些操作(动作常例)如
加 减 乘 除 并以此为基础的一些复杂功能
乘乘 求余 求整 。。。

Python语言也是基于其它已有的知识建立起来,比如常规数学的
运算规则也应该在Python中实现。
方式可以改变,但是背后道理一定相同。

2.4 Output Statements

SS = Syntax(form) + Semantics(meaning)
有点像心法和技巧。

print()
print(‘’)
print("")
print(,)

2.5 Assignment Statements

  1. simple assignment
    <变量> = <表达式>
    names = expressions
    很神奇,这可以推广到宇宙的尽头。不管是简单还是复杂,
    容易还是困难,高还是低。。。都需要用名来描述道。可能
    很难捕捉,也许需要时间认可,但是需要用名来道,道来彰显名。
    =的左右虽然各在天边,但是又在近边。

  2. assinging input
    语言必须要和相应的用户交互,所有必须有输入,当然还有输出。
    屏幕

全部评论 (0)

还没有任何评论哟~