if
age = 20
if age >= 18:
print 'your age is', age
print 'adult'
print 'END'
结果
your age is 20
adult
END
注意:
Python代码的缩进规则。具有相同缩进的代码被视为代码块,上面的3,4行 print 语句就构成一个代码块(但不包括第5行的print)。如果 if 语句判断为 True,就会执行这个代码块。
缩进请严格按照Python的习惯写法:4个空格,不要使用Tab,更不要混合Tab和空格,否则很容易造成因为缩进引起的语法错误。
注意: if 语句后接表达式,然后用:表示代码块开始。
如果你在Python交互环境下敲代码,还要特别留意缩进,并且退出缩进需要多敲一行回车:
age = 20
if age >= 18:
print 'your age is', age
print 'adult'
结果
your age is 20
adult
if-else
score = 55
if score>=60:
print 'passed'
else:
print 'failed'
print 'aaa'
结果:
failed
aaa
注意:else后面要有:
if-elif-else
score = 85
if score>=90:
print 'excellent'
elif score>=80:
print 'good'
elif score>=60:
print 'passed'
else:
print 'failed'
结果:
good
for循环结构
L = [75, 92, 59, 68]
sum = 0.0
for name in L:
sum+=name
print sum
结果
294.0
while
sum = 0
x = 1
while x<=100:
sum+=x
x+=2
print sum
结果:
2500
while-break
用 for 循环或者 while 循环时,如果要在循环体内直接退出循环,可以使用 break 语句。
利用 while True 无限循环配合 break 语句,计算 1 + 2 + 4 + 8 + 16 + … 的前20项的和。
sum = 0
x = 1
n = 1
while True:
if n>20:
break
sum=sum+x
x=x*2
n=n+1
print sum
结果:
1048575
continue
在循环过程中,可以用break退出当前循环,还可以用continue跳过后续循环代码,继续下一次循环。
对已有的计算 0 - 100 的while循环进行改造,通过增加 continue 语句,使得只计算奇数的和:
sum = 0
x = 0
while True:
x = x + 1
if x > 100:
break
if x%2==0:
continue
sum+=x
print sum
结果:
2500
多重循环
在循环内部,还可以嵌套循环,我们来看一个例子:
对100以内的两位数,请使用一个两重循环打印出所有十位数数字比个位数数字小的数,例如,23(2 < 3)。
for x in [1,2,3,4,5,6,7,8,9]:
for y in [0,1,2,3,4,5,6,7,8,9]:
if x<y:
print x*10+y
12
13
14
15
16
17
18
19
23
24
25
26
27
28
29
34
35
36
37
38
39
45
46
47
48
49
56
57
58
59
67
68
69
78
79
89