【原创】Python初体验之基础篇(2)- 流程控制
python中流程控制和C、JAVA类似,包括条件语句和循环语句。
1 if语句
1.1 逻辑运算
if语句里也是使用布尔逻辑1来作为判断条件,主要有4个逻辑运算符来组合布尔值,分别为:and, or, not和!=, ==, 而不是使用&&, ||来作为逻辑与和逻辑或的关键字。
各种逻辑值组合的真值表如表1-1所示。
表1-1 逻辑运算真值表
|
p |
q |
p and q |
p or q |
p == q |
p != q |
not p |
|
True |
False |
False |
True |
False |
True |
False |
|
True |
True |
True |
True |
True |
False |
False |
|
False |
True |
False |
True |
False |
True |
True |
|
False |
False |
False |
False |
True |
False |
True |
由表3-1可以看出,python的逻辑运算和其他语言里的是一样的。
逻辑运算中有一个“短路求值”的概念,具体来说在逻辑与运算中,如果已经计算求的第一个运算表达式的值为False时,第二个表达式就不会再进行计算;同理,在逻辑或运算中如果求的第一个表达式的结果为True,那么也不会再去计算第二个表达式的值。
1.2 if语句
Python中可以使用的if语句组合有以下几种:
(1) if # 只包括一个条件判断 (2) if else # 包括2个相反条件判断 (3) if elif # 包括2个独立条件判断 (4) if elif else # 包括3个分支,可以包括3中条件状况
## if 和else中也可以嵌套若干个elif分支,增加条件判断
## 各个关键词后必须以冒号“:”结尾,这是python规定格式
关于if和else的示例代码如下:
1 tmp = "python" 2 3 if tmp == "python!" : 4 print("tmp is python!") 5 elif tmp == "PYTHON" : 6 print("tmp is PYTHON") 7 elif tmp == "python" : 8 print("tmp is python") 9 else: 10 print("unknown!")
1.3 代码块缩进
Python中按照规范使用代码的缩进来标识代码块,同一个代码块中的所有代码行必须有相同的缩进。
1.4 条件表达式
Python中也包含条件表达式,C语言中条件表达式形式为“cond ? exp1 : exp2”,而python中的条件表达式形式为“cond if exp1 else exp2”。代码示例如下:
1 >>> a = 1 2 >>> print("print: " + "python" if a == 0 else "PYTHON") 3 PYTHON
2 循环
Python中控制循环的关键字有for和while两个,使用方式和C、java类似。
2.1 for循环
for循环语句中for后紧跟的部分仍然是整个循环的控制条件以及对应的增长策略,例如,以递增的顺序打印10以内的整数。
1 # 以递增的顺序打印10以内的整数 2 3 for i in range(10): 4 print(i)
range函数如果未指定递增策略将默认为1,即递增的方式,若想要以递减的顺序打印10以内的整数。
1 # 按递减的方式输出10以内的整数 2 3 for i in range(10, 0, -1): 4 print(i)
range函数,最多可以传入3个参数,如果也可以省略其中的1到2个,具体示例如下:
range(5) # [0, 5) range(1, 5) # [1, 5] range(1,5,2) # 1到5的数,步长为2
2.2 while循环
While循环和for循环类似,不过是代码会相对更复杂点,如下所示。
1 # while循环递增打印10以内的整数 2 3 >>> a = 1 4 >>> while a <= 10: 5 ... print(a) 6 ... a = a + 1 7 8 # python中没有自增的运算,所以只能用a = a + 1这样来实现
3 break和continue
Python的循环中也可以使用break和continue语句来控制循环的运行,使用和C、java中一样,break为跳出当前所在的循环层,而continue则是让程序重新回到循环的开头部分重新开始运行。
break语句的示例代码如下:
1 # break语句示例, 2 3 >>> a = 1 4 >>> while a < 100: 5 if a >= 10: 6 break 7 print(a) 8 a = a + 1
continue语句示例如下:
1 # continue语句示例 2 3 >>> a = 1 4 >>> while a < 10 : 5 print(a) 6 if a % 2 == 1: 7 a = a + 1 8 continue 9 a = a+1
4 循环嵌套
Python的循环中也可以办函若干个子循环,和C、java一样,由于没有使用“{}”来囊括本代码块的所有代码,仅仅是通过代码的缩进来控制,因此当代码足够复杂时,得谨慎各个代码的缩进。
5 本章小结
本章主要讲述了python中的流程控制语句,图5-1为本章知识点总结。

图5-1本章知识点总结
浙公网安备 33010602011771号