天天看點

python學習(三) 條件判斷和循環

if

age = 
if age >= :
    print 'your age is', age
    print 'adult'
print 'END'
           

結果

your age is 
adult
END
           

注意:

Python代碼的縮進規則。具有相同縮進的代碼被視為代碼塊,上面的3,4行 print 語句就構成一個代碼塊(但不包括第5行的print)。如果 if 語句判斷為 True,就會執行這個代碼塊。

縮進請嚴格按照Python的習慣寫法:4個空格,不要使用Tab,更不要混合Tab和空格,否則很容易造成因為縮進引起的文法錯誤。

注意: if 語句後接表達式,然後用:表示代碼塊開始。

如果你在Python互動環境下敲代碼,還要特别留意縮進,并且退出縮進需要多敲一行回車:

age = 
if age >= :
    print 'your age is', age
    print 'adult'
           

結果

your age is 
adult
           

if-else

score = 
if score>=:
    print 'passed'
else:
    print 'failed'
    print 'aaa'
           

結果:

failed
aaa
           

注意:else後面要有:

if-elif-else

score = 

if score>=:
    print 'excellent'
elif score>=:
    print 'good'
elif score>=:
    print 'passed'
else:
    print 'failed'
           

結果:

good
           

for循環結構

L = [, , , ]
sum = 
for name in L:
    sum+=name
print sum
           

結果

294.0
           

while

sum = 
x = 
while x<=:
    sum+=x
    x+=
print sum
           

結果:

2500
           

while-break

用 for 循環或者 while 循環時,如果要在循環體内直接退出循環,可以使用 break 語句。

利用 while True 無限循環配合 break 語句,計算 1 + 2 + 4 + 8 + 16 + … 的前20項的和。

sum = 
x = 
n = 
while True:
    if n>:
        break
    sum=sum+x
    x=x*
    n=n+

print sum
           

結果:

1048575
           

continue

在循環過程中,可以用break退出目前循環,還可以用continue跳過後續循環代碼,繼續下一次循環。

對已有的計算 0 - 100 的while循環進行改造,通過增加 continue 語句,使得隻計算奇數的和:

sum = 
x = 
while True:
    x = x + 
    if x > :
        break
    if x%==:
        continue
    sum+=x
print sum
           

結果:

2500
           

多重循環

在循環内部,還可以嵌套循環,我們來看一個例子:

對以内的兩位數,請使用一個兩重循環列印出所有十位數數字比個位數數字小的數,例如,( < )。

for x in [,,,,,,,,]:
    for y in [,,,,,,,,,]:
        if x<y:
            print x*+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