循环与判断
3.1 布尔表达式和判断
Python 中的布尔类型值:True 和 Flase 其中,注意这两个都是首字母大写。
但凡能够产生一个布尔值的表达式为布尔表达式:
1 > 2 # False
1 < 2 <3 # True
12!= '12' # True
'Python' == 'python' # False
'P' in 'Python' # True
number = 12
number is 12 # True
注1:不同类型的对象不能使用<、>、<=、=>进行比较,却可以使用==和!=。
注2:浮点类型和整数类型虽然是不同类型,但不影响比较运算。还有,不等于!= 可以写作<> 。
话说,布尔类型可以比较吗?如:True > Flase,回答是可以的,Ture 和 Flase 对于计算机就像是 1 和 0 一样,所以结果是真,即True。
3.2 条件控制
定义格式:
Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块
if 语句
Python中if语句的一般形式如下所示:
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。
所谓条件成立,指的是返回值为True的布尔表达式。
注意:
1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
3、在Python中没有switch – case语句。
3.3 循环
①for 循环
把 for 循环所的事情概括成一句话就是:于…其中的每一个元素,做…事情。
打印九九乘法表
for i in range(1, 10):
for j in range(1, i+1):
print('{}x{}={}\t'.format(i, j, i*j), end='')
print()
运行结果:
1x1=1
2x1=2 2x2=4
3x1=3 3x2=6 3x3=9
4x1=4 4x2=8 4x3=12 4x4=16
5x1=5 5x2=10 5x3=15 5x4=20 5x5=25
6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36
7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49
8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64
9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81
②while 循环
总结:只要…条件一成立,就一直做…
在循环过程中,可以使用 break 跳过循环,使用 continue 跳过该次循环。
在 Python 的 while 循环中,可以使用 else 语句,while … else 在循环条件为 false 时执行 else 语句块。如:
count = 0
while count < 3:
print (count)
count = count + 1
else:
print (count)
运行结果:
0
1
2
3
有 while … else 语句,当然也有 for … else 语句,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。如:
for num in range(10,20): # 迭代 10 到 20 之间的数字
for i in range(2,num): # 根据因子迭代
if num%i == 0: # 确定第一个因子
j=num/i # 计算第二个因子
print ('%d 是一个合数' % num)
break # 跳出当前循环
else: # 循环的 else 部分
print ('%d 是一个质数' % num)
运行结果:
10 是一个合数
11 是一个质数
12 是一个合数
13 是一个质数
14 是一个合数
15 是一个合数
16 是一个合数
17 是一个质数
18 是一个合数
19 是一个质数