第八次課:Python縮排、語句

來源:互聯網
上載者:User

標籤:語句   python   if   

  在談到語句之前,要簡要說下Python的縮排。對於Python而言代碼縮排是一種文法,Python沒有像其他語言一樣採用{}或者begin...end分隔代碼塊,而是採用代碼縮排和冒號來區分代碼之間的層次。縮排的空白數量是可變的,但是所有代碼塊語句必須包含相同的縮排空白數量,這個必須嚴格執行,否則將拋出SyntaxError異常。縮排的方式有兩種,第一是採用Tab鍵,第二是空格。

  同其他程式設計語言一樣,Python語句也存在條件選擇和迴圈語句兩種,其風格和其他語言的很類似,但是在寫法和用法上還是有一些區別。下面就讓我們一起來瞭解一下。

一.條件選擇語句

  Python中條件選擇語句的關鍵字為:if 、elif 、else這三個。其基本形式如下:

if  <條件1>:

    statement

elif <條件2>:

    statement

elif <條件3>:

    statement

............

else:

    statement

  其中elif和else語句塊是可選的。對於if和elif只有條件或運算式expression為True時,該分支語句才執行,只有當if和所有的elif的條件或運算式都為False時,才執行else分支。注意Python中條件選擇語句和其他語言中的區別,如C語言中條件或運算式expression必須要用括弧括起來,在Python中不用,但是要注意條件或運算式後面有個冒號(:)。

  下面舉例來示範條件選擇語句的用法:(根據學生的成績來評定等級,優秀、良好、及格、不及格)

num=input("Please input your source:")

if num >=85:

     print("Congratulations, you are excellent")

elif num>=75 and num <85:

     print("Congratulations, you‘re doing well")

elif num>=60 and num<75:

     print("Congratulations, you passed the exam")

else:

     print("Sorry, you didn‘t pass the exam")

示範效果

650) this.width=650;" src="https://s4.51cto.com/oss/201710/25/35a85451d73fd47154075b7149d6105f.png-wh_500x0-wm_3-wmp_4-s_2466329859.png" title="QQ20171025105640.png" alt="35a85451d73fd47154075b7149d6105f.png-wh_" />

二.迴圈語句

  和其他語言一樣,Python也有自己的迴圈語句,提供了for迴圈和while迴圈兩種,沒有do..while迴圈。Python中的for迴圈用法Java、C#中的for迴圈用法類似,while迴圈用法大致和C語言中的類似。

for循壞

  for迴圈的基本形式如下:

for variable in list:

   block

  下面舉例來示範for循壞語句的用法:(計算從1到100的和)

sum1=0

for i in range(1,101):

    sum1+=i

print(sum1),

示範效果

650) this.width=650;" src="https://s2.51cto.com/oss/201710/25/c6ecc0c4b23e993408510f7cfd1cc74e.png-wh_500x0-wm_3-wmp_4-s_688046038.png" title="QQ20171025105748.png" alt="c6ecc0c4b23e993408510f7cfd1cc74e.png-wh_" />

  註:range()是一個內建函數,它可以產生某個範圍內的數字列表。比如說range(1,6)就會產生[1,2,3,4,5]這樣一個列表,而range(8)會產生[0,1,2,3,4,5,6,7]這樣一個列表。此外還有xrange()函數,用法和range()相同,但返回的是一個產生器,如xrange(1,6),將返回xrange(1,6)。在循壞中用xrange會比range效能優很多,尤其是返回很大的時候,因為不需要一上來就開闢一塊很大的記憶體空間。舉例

650) this.width=650;" src="https://s5.51cto.com/oss/201710/25/b79c44ee3a8717fcc3db7736bd6cb724.png-wh_500x0-wm_3-wmp_4-s_2368092243.png" title="QQ20171025131812.png" alt="b79c44ee3a8717fcc3db7736bd6cb724.png-wh_" />

  上面示範的是當個循壞,接下來看看嵌套迴圈,比如說有一個列表list,要遍曆輸出每個字元。如下:

list=[‘China‘,‘Britain‘,‘French‘,‘Russia‘,‘Germany‘,‘Dubai‘,‘Auatralia‘]

for i in range(len(list)):

    a=list[i]

    print a,

    for x in range(len(a)):

          b=a[x]

          print b,

650) this.width=650;" src="https://s2.51cto.com/oss/201710/25/e19bfabe004aef1b7f3ff96ee4ddfdc2.png-wh_500x0-wm_3-wmp_4-s_1933273123.png" title="QQ20171025105843.png" alt="e19bfabe004aef1b7f3ff96ee4ddfdc2.png-wh_" />

  註:內建的函數len()不僅可以用來求算字串的長度也可以用來求列表或者集合中成員的個數。

這裡還給大家一個列子,用來展示九九乘法表,代碼如下:

for i in range(1,10):

    for j in range(1,i+1):

        print j,"x",i,"=",j*i,"",

        if j>=i:

            print(‘‘)

  在這段代碼中大家要注意的是,print預設會自動換行,輸出的結果就是一整列,加入逗號就表明不自動換行,就會格式化顯示乘法表的模樣,效果

650) this.width=650;" src="https://s1.51cto.com/oss/201710/25/81204999a88945dd7615981125621b88.png-wh_500x0-wm_3-wmp_4-s_3965803854.png" title="QQ20171025105053.png" alt="81204999a88945dd7615981125621b88.png-wh_" />

while迴圈

  while迴圈的基本形式:

while <條件>:

    statement

  只有當條件為True時,才執行迴圈。一旦條件為False,迴圈就終止了。

  下面舉例來示範while循壞語句的用法:(計算從1到100的和)

i=1

sum1=0

while i<=100:

    sum1+=i

    i+=1

print(sum1)

  如果想要在語句塊過程中終止迴圈,可以用break或者continue。break是跳出整個迴圈,而continue是跳出該次迴圈。

  下面舉個列子說明下:(判斷使用者是否輸入退出程式exit,如沒有則輸出使用者輸入的命令,加入一個判斷字元長度的條件)

while True:  

    str1 = raw_input(‘請輸入一個命令:‘)  

    if str1 == ‘exit‘:  

        break  

    elif len(str1) < 3:  

        print ‘您輸入的字元有點短喲,請重新輸入!‘  

        continue  

    else:  

        print ‘你輸入的命令是:‘, str1  

650) this.width=650;" src="https://s5.51cto.com/oss/201710/25/654efe9223899885ea45c57329e86fa5.png-wh_500x0-wm_3-wmp_4-s_749979862.png" title="QQ20171025112839.png" alt="654efe9223899885ea45c57329e86fa5.png-wh_" />

  從上面的例子中可以看出Python中的for和while迴圈都是可以加條件選擇語句的,其中else子句在整個迴圈執行條件不符合時才執行。


本文出自 “DreamScape” 部落格,請務必保留此出處http://dyqd2011.blog.51cto.com/3201444/1975883

第八次課:Python縮排、語句

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.