1. 布尔运算

计算器和计算机都是电子设备,但计算机更为强大的原因,用通俗的说法就是它 “可编程”(Programable)—— 而所谓可编程的核心就是布尔运算及其相应的流程控制(Control Flow);没有布尔运算能力就没有办法做流程控制;没有流程控制就只能 “按顺序执行”,那就显得 “很不智能”……

1.1布尔值

在 Python 语言中,布尔值(Boolean Value)用 TrueFalse 来表示。
注意:请小心区分大小写 —— 因为 Python 解释器是对大小写敏感的,对它来说,Truetrue 不是一回事。

1.2逻辑运算符

Python 语言中的逻辑操作符(Logical Operators)如下表所示 —— 为了理解方便,也可以将其称为 “比较操作符”。

比较操作符意义示例布尔值
==等于1 == 2False
!=不等于1 != 2True
>大于1 > 2False
>=大于等于1 >= 1True
<小于1 < 2True
<=小于等于1 <= 2True
in属于'a' in 'basic'True

除了等于、大于、小于之外,Python 还有一个逻辑操作符,in

这个表达式 'a' in 'basic' 用自然语言描述就是:

'a' 存在于 'basic' 这个字符串之中吗?”(属于关系)

1.3布尔运算操作符

以上的例子中,逻辑操作符的运算对象(Operands)是数字值和字符串值。

而针对布尔值进行运算的操作符很简单,只有三种:与、或、非:

分别用 andornot 表示

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总结

以下是这一章中所提到的重要概念。了解它们以及它们之间的关系,是进行下一步的基础。

  • 数据:整数、布尔值;操作符;变量、赋值;表达式
  • 函数、子程序、参数、返回值、调用
  • 流程控制、分支、循环
  • 算法、优化
  • 程序:语句、注释、语句块
  • 输入、处理、输出
  • 解释器