在Python中有三种控制流语句——if、for和while。
1、if语句块:
if 条件表达式1:
当条件1为真时你要执行的代码
elif 条件表达式2:
当条件2为真时你要执行的代码
else:
上述两条件都不满足时执行的代码 注:elif部份和else部份是可有可无的,视你的需要而定。以上的某个条件表达式为真时,则执行其相应的语句块,其后的条件表达式则忽略。
例1:
if True:
print 'Yes, it is true' 输出:
Yes, it is true
说明:True代表条件为真,它是布尔值。print语句块始终执行。非零的数都表示真;0为假,既条件不成立。
例2:下面是一个猜数字的游戏
#!/usr/bin/python
# Filename: if.py
number = 23
guess = int(raw_input('请输入一个整数 : '))
if guess == number:
print '恭喜你,你猜对了.' # 语句块的开始
print "(但是没有任何奖赏!)" # 语句块的结束
elif guess < number:
print '小了' # 另一个语句块
# 你可以在一个语句块中做你想做的任何事情 ...
else:
print '大了'
print '程序结束' 运行输出结果:
$ python if.py
请输入一个整数 : 50
大了
程序结束
$ python if.py
请输入一个整数 : 22
小了
程序结束
$ python if.py
请输入一个整数 : 23
恭喜你,你猜对了.
(但是没有任何奖赏!)
程序结束 注:Python程序的语句块中必须有缩进,例如以上的例子。在同一个语句块中缩进必须一致。
2、while语句块 while语句让你可以重复执行一段代码,只要条件为真。while语句有一个可选的部份else,else子句在while循环结束后总是会执行。
while 条件表达式:
条件表达式为真时执行的语句
else:
while循环结束后总是会执行 下面是一个例子:
#!/usr/bin/python
# Filename: while.py
number = 23
running = True
while running:
guess = int(raw_input('请输入一个整数: '))
if guess == number:
print '恭喜你,你猜对了.'
running = False
elif guess < number:
print '小了.'
else:
print '大了.'
else:
print 'while循环结束.'
print '程序结束' 运行输出如下:
$ python while.py
请输入一个整数 : 50
大了.
请输入一个整数 : 22
小了.
请输入一个整数 : 23
恭喜你,你猜对了.
while循环结束.
程序结束
3、for语句 结构如下:
for 变量 in 序列:
语句块1
else(可选):
语句块2 说明:else语句块总是会在for循环结束后执行。
示例如下
#!/usr/bin/python
# Filename: for.py
for i in range(1, 5):
print i
else:
print 'The for loop is over' 运行输出如下:
$ python for.py
1
2
3
4
The for loop is over 说明:range([start,] stop[, step])函数返回一个包含整数的等差数列的列表range(i, j)的返回结果是[i, i+1, i+2, ..., j-1]。方括号中的参数是可选的。start的默认值是0,例如range(4)的返回值是[0,1,2,3]。step表示等差数列的公差,默认值是1。
4、break语句 break用于中止并退出一个循环语句,不管循环条件是否成立或一个序列的元素是否全部读取过。
注意:如果你中止了一个for或while循环,其对应的else子句不会执行。
下面是一个例子:
#!/usr/bin/python
# Filename: break.py
while True:
s = raw_input('请输入 : ')
if s == 'quit':
break
print '输入的字符串的长度是', len(s)
print '程序结束' 输出如下:
$ python break.py
请输入 : Programming is fun
输入的字符串的长度是 18
请输入 : When the work is done
输入的字符串的长度是 21
请输入 : if you wanna make your work also fun:
输入的字符串的长度是 37
请输入 : use Python!
输入的字符串的长度是 12
请输入 : quit
程序结束
5、continue语句 continue语句告诉Python跳过continue以下的语名部份,进行下一个循环。
例子如下:
#!/usr/bin/python
# Filename: continue.py
while True:
s = raw_input('请输入 : ')
if s == 'quit':
break
if len(s) < 3:
continue
print 'Input is of sufficient length' 运行输出如下:
$ python continue.py
请输入 : a
请输入 : 12
请输入 : abc
输入的长度符合要求
请输入 : quit