天天看點

Python -- if while for 語句

小Q:誰念西風獨自涼,蕭蕭黃葉閉疏窗,沉思往事立殘陽。

        被酒莫驚春水重,賭書消得潑茶香,當時隻道是尋常。     ---- 納蘭容若《浣溪沙》

----------------------------------------------------------------------------------------------------

每個關鍵詞後都用冒号( :)分割

子產品以縮進空格定義,一般空四格

注:python中沒有do...while和switch語句;但是有for....else和while.....else語句。

if 判斷條件1:

    執行語句1……

elif 判斷條件2:

    執行語句2……

else:

    執行語句3……

#!/usr/bin/python
# -*- coding:UFT-8 -*-
#有外界互動的成績評定器

source = int (raw_input("please input a num: "))  #raw_input輸入的是字元串,需要轉化才能if
if source >= 90:
    print 'A'
    print 'very good'
elif source >= 70:
    print 'B'
    print 'good'
else:
    print 'C'
    print 'It's bad'
print "ending"      

while   判斷條件:

           執行語句……

#!/usr/bin/python

count = 0
while count < 5:
   print count, " is  less than 5"
   count = count + 1
else:
   print count, " is not less than 5"
   
>>>>>>
0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5      

注:while..else和for...else相同,會在循環正常執行完的情況下執行(并非遇到break等跳出中斷)

Python for循環可以周遊任何序列的項目,如一個清單或者一個字元串。

for  iterating_var   in   sequence:

       statements(s)

#!/usr/bin/python
# -*- coding: UTF-8 -*-

fruits = ['banana', 'apple',  'mango']
for index in range(len(fruits)):
   print '目前水果 :', fruits[index]
print "Good bye!"

>>>>>>>>
目前水果 : banana
目前水果 : apple
目前水果 : mango
Good bye!      

随機函數:

range(5)      >>>  0,1,2,3,4

range(1,6)     >>>  1,2,3,4,5

range(1,10,2)   >>>  1,3,5,7,9

xrange(5)      >>>  0,1,2,3,4

xrange(1,6)   >>>  1,2,3,4,5

xrange不占記憶體,當用到時才會調用到,測試:

a = xrange(5);      print  a

舉例:嵌套循環輸出2-30之間的素數?

#!/usr/bin/python
# -*- coding:UFT-8 -*-

i = 2
for i < 30:
    j = 2
    while (j <=(i/j)):        #無優先級時,括号可有可無
        if not (i%j):break   #i 除以 j 沒有餘數,則中斷
        j = j + 1
    if j > i/j :
         print 1,' 是素數'
         i= i+ 1
print "good bye"

>>>>>>>>>
2 是素數
3 是素數
5 是素數
7 是素數
11 是素數
13 是素數
17 是素數
19 是素數
23 是素數
29 是素數      

舉例:列印9*9乘法表?

#!/usr/bin/python

for i in xrange(1,10):    
     for j in xrange(1,i+1):   
     print "%s*%s=%s" % (j,i,j*i),    
   print             #列印換行符
   
>>>>>>>>>   
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81      
Python -- if while for 語句
#!/usr/bin/python
# -*- coding: UTF-8 -*-

for letter in 'Python':     # 第一個執行個體break
   if letter == 'h':
     break
   print 'Current Letter :', letter
   
var = 7             # 第二個執行個體continue
while var > 0:              
   var = var -1
   if var == 5:
      continue
   print '目前變量值 :', var
   
for letter in 'abcd':          #第三個執行個體pass
   if letter == 'b':
      pass
      print '這是 pass 塊'
   print '目前字母 :', letter
print "Good bye!"

>>>>>>>>>
Current Letter : P
Current Letter : y
Current Letter : t
目前變量值 : 6
目前變量值 : 4
目前變量值 : 3
目前變量值 : 2
目前變量值 : 1
目前變量值 : 0
目前字母 : a
這是 pass 塊
目前字母 : b
目前字母 : c
目前字母 : d
Good bye!