二、Python控制结构


本章我们来了解一下,python最基本的控制结构,包括:    

一、if..else..

1
2
3
4
5
6
7
8
9
10
11
12
# -*-coding:gbk-*-
#要想在脚本中使用中文字符注释,请添加如上字符编码,且必须在第一行
#输入两个数,并比较大小
input_a = int(raw_input("input a:"))
input_b = int(raw_input("input b:"))
if input_a > input_b:
    print "input_a > input_b"
elif input_a == input_b:
    print "input_a = input_b"
else:
    print "input_a < input_b"
    print input_a.__class__

二、while

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
sum = 0
num = 0

while num &lt; 10:
    sum = sum + num
    num += 1

    if num == 3:
        continue

    if num == 8:
        break
else:
    print "over"

print "sum = %d" %(sum)

输出结果:sum=28  (1+2+3+4+5+6+7 = 28) 提示:while中的else语句除遇到break,否则均被执行

三、for

1
2
3
4
for i in range(1,3):
    print i
else:
    print "-------------"

提示:for中的else语句除遇到break,否则均被执行

四、break,continue

break:表示退出所在的整个循环
continue:表示退出当次循环,但不退出整个循环
我们举个例子来说明:

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
# -*-coding:gbk-*-
#输出菱形
for i in range(0,8):
    print  ' '*i + '* * * * * * * *'  
print '\n'

for i in range(0,8):
    print  ' '*(8-i) + '* * * * * * * *'  
print '\n'

for i in range(0,8):
    print ' '*(7-i) + '* '*(i+1)

for i in range(0,7):
    print ' '*(i+1) + '* '*(7-i)  
print '\n'

for i in range(0,8):
    if i == 2 or i == 3 or i == 4 or i == 5 or i == 6 or i == 7 :
        print ' '*(7-i) + '* ' +  ' '*(2*i-2) + '* '
        continue
    print ' '*(7-i) + '* '*(i+1)

for i in range(0,7):
    if i == 0 or i == 1 or i == 2 or i == 3 or i == 4:
        print ' '*(i+1) + '* ' + ' '*(10-2*i)  + '* '
        continue
    print ' '*(i+1) + '* '*(7-i)

输出图案如下:
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *

* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * *

*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*

*
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
*

Tags:
文 / 甲乙丙丁
LEAVE A REPLY

loading