条件判断

Python中普通的条件判断为:

1
2
3
4
>>> if x==0:
>>> print(x)
>>> else:
>>> print('hello,world')

多重的条件判断:

1
2
3
4
5
6
7
8
>>> if x==0:
>>> print(x)
>>> elif x==1:
>>> print('hello')
>>> elif x==2:
>>> print('world')
>>> else:
>>> print('hello,world')

Python中以:来表示代码块开始,这点区分与Java中以大括号表示代码块

特别注意: 多重条件判断会从上到下依次判断,如果某个判断为 True,执行完对应的代码块,后面的条件判断就直接忽略,不再执行了

需要注意一下缩进,在Python中是以缩进来划分代码块的,不同的缩进,就是不同的代码块,比如

1
2
3
4
>>> if x==0:
>>> print(x)
>>> else:
>>> print('hello,world')

就会报如下的错误,为了避免这种问题,常用的做法就是将Tab设置成缩进4个空格,方


图片来自于廖雪峰网站

循环

Python中的for循环跟Java不太一样,用法上面更像Javaforeach

1
2
3
L = ['Adam', 'Lisa', 'Bart']
for name in L:
print name

name 这个变量是在 for 循环中定义的,意思是,依次取出list中的每一个元素,并把元素赋值给 name,然后执行for循环体(就是缩进的代码块)。

1
2
3
4
//Java中的foreach
for(int i : a){
System.out.print(i + ",");
}

while循环就没什么不同了

1
2
3
4
5
N = 10
x = 0
while x < N:
print x
x = x + 1

Python中,也会有break(退出),continue(跳过),表达的是以跟Java是一样的,循环也可以嵌套使用。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
>>> x = [1,2,3,4,5,6]

>>> for a in x:
if a == 4:
break
print(a)
1
2
3

>>> for a in x:
if a % 2 == 0:
continue
print(a)
1
3
5
>>> for a in x:
for b in ['a','b']:
print(a,b)
1 a
1 b
2 a
2 b
3 a
3 b
4 a
4 b
5 a
5 b
6 a
6 b