python 流程控制——基本控制语句

顺序结构

分支结构

  • if 语句

循环结构

  • for 语句
  • while 语句

先说分支结构,最基础的是 if 语句

1
2
3
4
5
6
7
8
9
10
11
12
13
>>> x = int(raw_input("Please enter an integer:"))
Please enter an integer: 42
>>> if x < 0:
... x = 0
... print "Negative changed to zero"
... elif x == 0:
... print "Zero"
... elif x == 1:
... print "Single"
... else:
... print "More"
...
More

python 在这里放弃掉了其他语言里的 switch 和 case 语句(其实我也觉得 switch 语句真的很难用),全部用 if 语句来实现了,所以分支结构里面只有 if 语句

这里用到了输入流 raw_input,这个函数用于提示用户输入数据,参数里面的字符串是提示信息

再用 int() 函数把输入流的数据转换为整数

elif 是 else if 的缩写,使用这个缩写使代码看上去更整洁,也避免了过深的缩进

在看官方教程的时候,发现它是用 range 函数来讲解循环的,我在这里先不弄那么复杂,先用传统的方法尝试下循环

首先是前面用到的 while 循环,在列表上的应用

1
2
3
4
5
6
7
>>> a = [0, 1, 4, 5, 7, 1, 5, 7, 23, 5, 4]
>>> i = 0
>>> while i < len(a):
... print a[i],
... i = i + 1
...
0 1 4 5 7 1 5 7 23 5 4

这时候再看看 for 循环的写法,优势就开始体现出来了

1
2
3
4
5
>>> a = [0, 1, 4, 5, 7, 1, 5, 7, 23, 5, 4]
>>> for i in a:
... print i,
...
0 1 4 5 7 1 5 7 23 5 4

这种 for 循环应该算是一种 foreach 语句了,i 变量在这里不做计数变量,而是做存放 a 列表中的数据的临时变量