Python学习笔记5(条件语句、循环语句)

1.条件语句

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

Python编程中 if 语句用于控制程序的执行,基本形式为:

1 if 判断条件:
2     执行语句……
3 else4     执行语句……

其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。

else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句,具体例子如下:

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

当判断条件为多个值时,可以使用以下形式:

1 if 判断条件1:
2     执行语句1……
3 elif 判断条件2:
4     执行语句2……
5 elif 判断条件3:
6     执行语句3……
7 else:
8     执行语句4……

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

python 复合布尔表达式计算采用短路规则,即如果通过前面的部分已经计算出整个表达式的值,则后面的部分不再计算。如下面的代码将正常执行不会报除零错误:

1 a=0
2 b=1
3 if ( a > 0 ) and ( b / a > 2 ):
4     print "yes"
5 else :
6     print "no"

而下面的代码就会报错:

1 a=0
2 b=1
3 if ( a > 0 ) or ( b / a > 2 ):
4     print "yes"
5 else :
6     print "no"

2.循环语句

Python提供了for循环和while循环(在Python中没有do..while循环):

a.while循环

基本形式如下

1 while 判断条件:
2     执行语句……

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。

当判断条件假false时,循环结束。

简单的例子

>>>count = 0
>>>while (count < 9):
>>>    print 'The count is:', count
>>>    count = count + 1
>>>print "Good bye!"

The count is: 0
The count is: 1
The count is: 2
The count is: 3
The count is: 4
The count is: 5
The count is: 6
The count is: 7
The count is: 8
Good bye!

while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过本次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:

 1 i = 1
 2 while i < 10:   
 3     i += 1
 4     if i%2 > 0:     # 非双数时跳过输出
 5         continue
 6     print i         # 输出双数2、4、6、8、10
 7  
 8 i = 1
 9 while 1:            # 循环条件为1必定成立
10     print i         # 输出1~10
11     i += 1
12     if i > 10:     # 当i大于10时跳出循环
13         break

在 python 中,while … else 在循环条件为 false 时执行 else 语句块:

1 count = 0
2 while count < 5:
3    print count, " is  less than 5"
4    count = count + 1
5 else:
6    print count, " is not less than 5"

b.for循环

基本形式如下

1 for iterating_var in sequence:
2    statements(s)

小例子

>>>for letter in 'Python':     # 第一个实例
>>>    print '当前字母 :', letter
 
>>>fruits = ['banana', 'apple',  'mango']
>>>for fruit in fruits:        # 第二个实例
>>>    print '当前水果 :', fruit
 
>>>print "Good bye!"

当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : h
当前字母 : o
当前字母 : n
当前水果 : banana
当前水果 : apple
当前水果 : mango
Good bye!

和while循环一样,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行。

 1 >>>for num in range(10,20):  # 迭代 10 到 20 之间的数字
 2 >>>    for i in range(2,num): # 根据因子迭代
 3 >>>        if num%i == 0:      # 确定第一个因子
 4 >>>        j=num/i          # 计算第二个因子
 5 >>>        print '%d 等于 %d * %d' % (num,i,j)
 6 >>>        break            # 跳出当前循环
 7 >>>    else:                  # 循环的 else 部分
 8 >>>        print num, '是一个质数'
 9 
10 10 等于 2 * 5
11 11 是一个质数
12 12 等于 2 * 6
13 13 是一个质数
14 14 等于 2 * 7
15 15 等于 3 * 5
16 16 等于 2 * 8
17 17 是一个质数
18 18 等于 2 * 9
19 19 是一个质数

for循环也可以搭配continue,break 来跳过循环

posted @ 2017-08-18 10:21  爱锁屏  阅读(246)  评论(0编辑  收藏  举报