1. 布尔运算
计算器和计算机都是电子设备,但计算机更为强大的原因,用通俗的说法就是它 “可编程”(Programable)—— 而所谓可编程的核心就是布尔运算及其相应的流程控制(Control Flow);没有布尔运算能力就没有办法做流程控制;没有流程控制就只能 “按顺序执行”,那就显得 “很不智能”……
1.1布尔值
在 Python 语言中,布尔值(Boolean Value)用 True
和 False
来表示。
注意:请小心区分大小写 —— 因为 Python 解释器是对大小写敏感的,对它来说,True
和 true
不是一回事。
1.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
:
这个表达式 'a' in 'basic'
用自然语言描述就是:
“
'a'
存在于'basic'
这个字符串之中吗?”(属于关系)
1.3布尔运算操作符
以上的例子中,逻辑操作符的运算对象(Operands)是数字值和字符串值。
而针对布尔值进行运算的操作符很简单,只有三种:与、或、非:
分别用
and
、or
、not
表示
1.4流程控制
有了布尔运算能力之后,才有根据情况决定流程的所谓流程控制(Control Flow)的能力。
以下代码为求解含左侧 2,不含右侧100范围内的质数
for n in range(2,100):
if n == 2:
continue
for i in range(2,n):
if n % i == 0:
break
else:
print(n)
1.5所谓函数
从结构上来看,每个函数都是一个完整的程序,因为一个程序,核心构成部分就是输入、处理、输出:
- 它有输入 —— 即,它能接收外部通过参数传递的值;
- 它有处理 —— 即,内部有能够完成某一特定任务的代码;尤其是,它可以根据 “输入” 得到 “输出”;
- 它有输出 —— 即,它能向外部输送返回值……
被调用的函数,也可以被理解为子程序(Sub-Program)—— 主程序执行到函数调用时,就开始执行实现函数的那些代码,而后再返回主程序……
1.6细节补充
一个语句块必然由一个行末带有冒号 :
的语句起始。
在 Python 程序中可以用 #
符号标示注释语句。
x = x + 1
的意思是说,把表达式 x + 1
的值保存到变量 x
中去 —— 如此这般之后,x
这个变量中所保存的就不再是原来的值了……
1.7总结
以下是这一章中所提到的重要概念。了解它们以及它们之间的关系,是进行下一步的基础。
- 数据:整数、布尔值;操作符;变量、赋值;表达式
- 函数、子程序、参数、返回值、调用
- 流程控制、分支、循环
- 算法、优化
- 程序:语句、注释、语句块
- 输入、处理、输出
- 解释器