python 分支,迴圈,條件陳述式用法

來源:互聯網
上載者:User

python 分支,迴圈,條件陳述式用法

我學習了兩種資料類型,1種是數字,1種是字串。數字可以做數學運算,字串呢可以處

理文本資訊。其中數字又分為,整數,浮點數。字串當然就是字串了。整數,浮點數就

是描述數位資料類型。然後呢,要做一些有意義的事情的話,就需要把這些組合起來進行

一些處理了(就是運算式了)。還要注意,python解譯器在做解釋之前做了資料類型的檢查

,比如數字和字串是不能相加的,如果要相加必須用str()等函數轉換為字串才行哦。但

是為什麼python解譯器不預設把這樣的運算預設把數字當字串處理啊!原因是這樣的話,

以後程式寫大了萬一出問題了不好調試!嘿嘿!調試,我今天用過,調試很好啊!就像丟了

東西去找東西一樣,按照原路一步一步的看東西丟在哪裡了(這個比方不知道合適不啊)。

但是這裡有個問題啊,既然python會做類型檢查,那麼我寫的如下代碼肯定會執行錯誤的啊

!!!:

>>> "3" < 3
False

 

結果可以正確執行,鬱悶。python怎麼能這樣呢!得到這個結果,python到底是怎麼做的啊

。我查閱了相關資料後明白了,它是把"3"的阿斯卡碼值和3做的比較,因為數字在字母的後

面,所以python輸出了這個結果!崩潰!唉!現在想起來python這隻小蟒蛇突然間沒有那麼

的可愛了!不管了!

還有啊,當一些複合運算式的時候,最好用括弧,因為這樣可以很容易的看出誰與誰想結合

關於變數的思考。我現在覺得,變數不應該想成一個箱子啊!因為:

>>> x = 1 + 2
>>> y = 2 + 3
>>> z = x
>>> z
3
>>> x
3

 

 


應該想成風箏更合適點啊!變數就相當於放風箏的人!通過這個人可以找到它放的那隻“風

箏”!然後1值風箏可以有兩根線。可以兩個人一起放一隻風箏。然後,放風箏的人也可以把

自己的線隔斷再串連在別人的風箏上!嗯,我覺得這樣的理解才對呢。還有風箏的類型決定

了變數的類型,只要風箏類型一變化,變數的類型就變化了!比如:

>>> x = 7
>>> x = "haha"
>>> x
'haha'


唉!變數這樣就給變了!嗯!這樣感覺不是很好啊!還是不要隨便變來變去,變得自己都忘

記了就完啦!

二:分支,條件,迴圈

現在回想起學第一章節的時候,寫的代碼可真夠呆的。就像玩CS遊戲的時候,好多笨蛋就知

道一條直線的往前沖,都不知道選擇敵人少的地方走,真的是笨腦袋!然後呢python還是很

聰明的,例如:

x = 3
y = raw_input("y:")
if x < y:
    print 'haha'

else: print 'heihei'
‘’‘’‘’‘’‘’‘’‘’‘
y:5
haha


在講分支、迴圈的時候,要特別注意python代碼中的強制縮排。

我們先看看分支:

(1)簡單的if-else
Python代碼
   1. a = '1' 
   2. if a == 1:         #注意後面有一個冒號。其中“==”是相等判斷 
   3.     print 1       #注意print 函數之前有一個tab鍵,這就是python的強制縮排 
   4. else:           #注意else後面的冒號 
   5.     print 0       #注意縮排 
   6.  
   7.  
   8. if (a == 1):      #可以添加園括弧     
   9.     print 1 
  10. else:     
  11.       print 0 

  輸出是:
   1 
   1 

(2)and 邏輯判斷
Python代碼
   1. a = 1 
   2. b = 0 
   3. if a == 1 and b == 1:   #and 是邏輯“與”運算,自然“or”就是邏輯“或”運算

 
   4.     print 1 
   5. else: 
   6.     print 0 

輸出是:
   0

 

(3)分支if -else if

更近一步看:
Python代碼

   1. #else if  
   2. a = 1 
   3. b = 0 
   4. if a < 1:    
   5.     print 1 
   6. elif b < 1:         #注意這裡不是else if ,而是elif。 
   7.     print 0 

輸出是:
   0

以上三個就講完了分支判斷。下面講迴圈。

(一)開始是for迴圈:

其for迴圈根本上是元素的遍曆:

如:
python代碼

   1. for i in range(0, 5):  #注意range是一個函數 
   2.     print i 
   3.  
   4. 輸出是: 
   5. 0 
   6. 1 
   7. 2 
   8. 3 
   9. 4 

輸出是:
0
1
2
3
4

其中range是一個函數,表示產生一個[0,5)的序列。這裡用“[0,5)”這種數學 表達方式就

是為了說明是大於等於0,小於5。是一個半開半閉區間。注意在python中都是使用半開半閉

區間(我沒有見過其他的形式,或許可以自己實現)。

而“for i in range(0, 5):”的含義就是從“0,1,2,3,4”這個序列中,每次取出一個

元素賦值個變數i,每次執行print函數,列印元素i的值。

在if和for語句結束的地方都有一個冒號,這是為了告訴編譯器,當前行結束了,應該解釋後

面一行了。

有了這個冒號,我們其實也可以不換行,直接執行print函數。

Python代碼
   1. for i in range(0, 5):print i 

(二)while 迴圈
   while迴圈,當while條件成立的時候,執行while內部的程式段。
Python代碼
   1. i = 10 
   2. while i > 0: 
   3.     print i 
   4.     i -= 1      

#注意python不支援i--,i++,--i,++i之類的運算

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.