Think Python<程序之道>

  • 计算机科学家与数学家类似,他们使用形式语言来描述理念。

  • 计算机科学家与工程师类似,他们设计产品,将原件组装成系统,对不同的方案进行评估选择。

  • 计算机科学技与自然科学家类似,他们观察复杂系统的行为,构建科学假说,并检验其预测。

  • 作为计算机科学家最重要的技能就是 问题求解

  • 问题求解就是发现问题,创造性地思考解决的方案以及清晰准确地表达解决方案的能力。

一 :什么是程序

  • 程序 是指一组定义如何进行计算的指令的集合。
  • 有那些指令呢?

输入:从键盘,文件或者其他设备中获取数据。

输出:将数据显示到屏幕,保存到文件中,或者发送到网络上等。

数学:进行基本的数学操作。

条件执行:检查某种条件的状态,并执行相应的代码。

重复:重复执行某种动作,往往在重复中有一些变化

五:值和类型

  • 是程序操作的最基本的东西,如一个字母或者数字。
  • 的类型。

1:整型(int)

2:浮点型(float)

3:字符串(string)

如何确定一个值的类型。

1

六:形式语言和自然语言

  • 自然语言是指人们所说的语言,如英语,西班牙语。他们不是由人设计而来的,而是自然演化而来的。

  • 形式语言则是人们为了特殊用途设计的语言。例如数学上使用的符号体系是一种特别擅于表示数字和符号之间关系的形式语言;化学家则是使用另一种形式语言来表示化学结构。而最重要的是:
    编程语言是人们为了表达计算过程而设计出来的形式语言

  • 形式语言的语法规则

  • 形式语言的语法规则分为两种:

分别适用于记号和结构

指定记号所组合的方式。

  • 什么是语法分析

当你阅读英语的句子或形式语言的语句时,需要弄清句子的结构是什么,这个过程称为语法分析

  • 形式语言和自然语言之间的区别:

歧义性:形式语言通常设计为几乎或者完全没有歧义,即不论上下文环境如何,任何表达式只有一个含义

冗余性:为了弥补歧义,减少误解,自然语言采用大量的冗余。因此,自然语言往往很啰嗦。形式语言则相对不那么冗余,更加简洁。

程序计算机程序的意义不含歧义,直接如字面所指,完全可以通过它的记号和结构理解其意义。

形式语言的密度远远大于自然语言,所以阅读起来需要花费更多的时间。还有结构非常重要,所以直接自顶向下,从左至右的阅读顺序并不一定是最好的。相反,要试着在头脑中解析程序,辨别出记号并解析出结构。最后,细节很重要,在自然语言中常常可以忽略的小错误,如拼写错误和符号错误,在形式语言中往往会造成很大的差别

七:调试

  • 程序错误被成为bug,而插捕bug的过程成为调试

  • 程序中可能出现的三种类型的错误:语法错误运行时错误,语义错误

八:术语表

问题求解(problem solving):总结问题,寻找解决方案以及表达解决方案的过程

高级语言(high-level language): 设计来方便人们读写的编程语言,如python。

低级语言(low-level language):设计来方便计算机执行的编程语言,也被称为“机器语言”或“汇编语言”

可移植性(portability):程序的一种属性,可以在多种类型的计算机(系统)上执行。

解释器(interpreter):一个读取其他程序并执行其内容的程序。

提示符(prompt):解释器显示的文字,提示用户已经准备好接收用户的输入。

程序(program):一系列代码指令的集合,指定一种运算。

print语句(pring statement):一个指令,可以通知python解释器在屏幕上显示一个值。

操作符(operator):一种特殊的符号,用来表达加法,乘法或字符串拼接等简单的运算。

值(value):程序操作的数据基本单位,如一个数字或一个字符串。

类型(type):值的类别。

整型(integer):用来表示整数的类型。

浮点型(floating-point):用来表示带小数部分的书的类型。

字符串(string):用来表示一串字符的类型。

自然语言(natural-language):自然演化而来的人们所说的语言。

形式语言(formal-language):人们设计为某些特定的目的设计的任何语言。所有编程语言都属于形式语言。

记号(token):程序的语法结构的最基本单位,类似于自然语言中的词。

语法(syntax):用于控制程序结构的规则

语法分析(parse):检查程序并分析其语法结构。

bug:程序中的错误

调试(debugging):发现和纠正bug的过程。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,616评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,020评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,078评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,040评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,154评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,265评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,298评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,072评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,491评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,795评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,970评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,654评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,272评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,985评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,223评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,815评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,852评论 2 351

推荐阅读更多精彩内容

  • 程序的基本概念1.1. 程序和编程语言程序(Program)告诉计算机应如何完成一个计算任务,这里的计算可以是数学...
    光剑书架上的书阅读 1,292评论 0 4
  • 第一部分Common Lisp介绍第1章 介绍一下Lisp你在学的时候觉得已经明白了,写的时候更加确信了解了,教别...
    geoeee阅读 2,934评论 5 8
  • 从昨天下午开始,就觉得身体有些不适,到早上被风一吹竟然有些瑟瑟发抖,不得已到家吃了点药,睡了一觉方才觉得舒服...
    千劫已过阅读 302评论 2 5
  • 这是昨天在喜马拉雅音频听到李筱懿老师说的,我很认同这个观点。我这人一向讲究实用,比如购物、学习、做事、招人,都是要...
    营养私教西西阅读 259评论 0 0
  • 愁到浓时酒自斟,挑灯看剑泪痕深。 黄金台迥少知己,碧玉调高空好音。 万叶秋声孤馆梦,一窗寒月故乡心。 庭前昨夜梧桐...
    柳之尺阅读 1,839评论 6 12