本节内容主要介绍编程基础概念,但从文中笑来对自学奇才乔治布尔的景仰描述中,我才得知布尔运算的伟大意义:
"没有乔治・布尔的布尔代数,没有克劳德・香农的逻辑电路,就没有后来的计算机,就没有后来的互联网,就没有今天的信息时代。"
既然布尔运算这么重要,那就让我们从它开始,进入编程世界吧!
计算机可编程的核心就是布尔运算及其相应的流程控制(Control Flow);
布尔运算涉及到的基础概念有:布尔值、逻辑操作符、布尔运算操作符。
1 在 Python 语言中,布尔值(Boolean Value)用 True 和 False 来表示。
注意:请小心区分大小写 —— 因为 Python 解释器是对大小写敏感的,对它来说,True 和 true 不是一回事。
任何一个逻辑表达式都会返回一个布尔值。
2 Python 语言中的逻辑操作符(Logical Operators)如下表所示 —— 为了理解方便,也可以将其称为 “比较操作符”。
比较操作符 意义 示例 布尔值
== 等于 1 == 2 False
!= 不等于 1 != 2 True
> 大于 1 > 2 False
>= 大于等于 1 >= 1 True
< 小于 1 < 2 True
<= 小于等于 1 <= 2 True
in 属于 'a' in 'basic' True
除了等于、大于、小于之外,Python 还有一个逻辑操作符,in:
3 针对布尔值进行运算的操作符很简单,只有三种:与、或、非:
分别用 and、or、not 表示
注意:它们全部是小写。因为布尔值只有两个,所以布尔运算结果只有几种而已,如下所示:
(True and False) yields: False
(True and True) yields: True
(False and True) yields: False
(True or False) yields: True
(False or True) yields: True
(False or False) yields: False
(not True) yields: False
(not False) yields: True
流程控制就是在if/else 语句的分支功能和Loop的循环功能下,利用各种函数功能,通过优化算法,实现自动高效地解决问题。文中有具体程序示例,在此不一一展示,
编程就是个基础工具,与所有的工具都一样,效用取决于使用它的人。所以,学会使用工具固然重要,更为重要的是与此同时自己的能力必须不断提高。
细节补充
语句
一个完整的程序,由一个或者多个语句(Statements)构成。通常情况下,建议每一行只写一条语句。
语句块
在 Python 语言中,行首空白(Leading whitespace,由空格 ' ' 或者 Tab ⇥ 构成)有着特殊的含义。
如果有行首空白存在,那么,Python 将认为这一行与其他邻近有着相同行首空白的语句同属于一个语句块 —— 而一个语句块必然由一个行末带有冒号 : 的语句起始。同属于一个语句块中的语句,行首空白数量应该相等。
注释
在 Python 程序中可以用 # 符号标示注释语句。
所谓的注释语句,就是程序文件里写给人看而不是写给计算机看的部分。
操作符
对于数字,我们可用的操作符有 +、-、*、/、//、%、** —— 它们分别代表加、减、乘、除、商、余、幂。
赋值符 = 等于号就是赋值符
变量 任意非数字字符,此如a,x等