官术网_书友最值得收藏!

3.5 循環結構

在日常生活中經常會遇到一些有規律的重復操作,例如,輸出從1到100的自然數。如果使用順序結構來實現這個程序,那么需要使用100個print語句。其實這些語句都是重復執行的,也只需要使用一個循環語句就可以代替這100個語句。在Python中循環語句有while和for兩種,首先來看一下while的用法。while循環語句包含條件語句和代碼塊兩個部分。

條件語句:這是一個可能為真也可能為假的語句,由while關鍵字開始,冒號結尾,例如:

     while i<100:

代碼塊:這是一段可以執行的代碼,當條件語句的值為真,就會執行這個代碼塊。同樣需要注意的是縮進格式。

     while i<100:
         print i

和選擇結構不同的是,當代碼塊執行完之后,并不是繼續向下執行,而是重新回到while循環的條件語句,再次檢查該條件的值,如果條件為真,就會再次執行代碼塊,否則會跳過整個代碼塊。

如果這個條件語句的結果永遠為假,那么代碼塊中的語句將不會執行。可是,如果這個條件語句的結果永遠為真呢?例如:

     while 1==1:
         print ("Never stop" )

這種循環永遠都不會結束,顯然并不需要一個程序永遠處于運行狀態,它總得有個結束的時候。這時就需要使用break語句,它的作用是終止這個循環。接下來編寫一個程序,要求用戶輸入用戶名,但是只有當用戶的輸入為admin時,才會進行下一步。

代碼中使用了input()函數,這是一個非常有用的函數,它可以在執行的時候從命令行處接收來自用戶的輸入,并將輸入結果傳遞給正在執行的程序。

除了break語句之外,還有一個功能類似的continue語句,它也只能應用于循環結構內部。不同的是,當程序執行過程中遇到continue語句,就會馬上回到循環開始的地方,重新對循環條件求值,也就是繼續這個循環。

Python中while循環的用法和其他語言(例如C語言)的區別并不大,而另一個for循環就有些不同了。

for循環又被稱為計數循環,這是因為可以在條件語句中指定循環的次數。for語句要和range()函數搭配使用,常見的形式如下:

     for i in range(10):

for語句的構成部分主要由循環語句和代碼塊兩個部分組成。

循環語句:這是一個由一個for關鍵字、一個變量名、一個in關鍵字、一個range()函數和一個冒號共同構成的語句。range()函數可以接收參數,最多3個。

代碼塊:這是一段可以執行的代碼。

需要注意的是,range()本身就是一個函數,如果只接收一個參數,如range(n),則表示的是執行代碼塊的次數。

     for i in range(5):
         print(i )

如果接收兩個參數,例如range(5,10),第一個參數表示的是for循環開始的值,第二個參數表示上限,但是循環中i的值不會取到10。

     for i in range(5,10):
         print(i)

range()函數也可以有第三個參數,前兩個參數分別是開始值和上限,第三個參數是步長,也就是每次循環時循環變量的變化。

     for i in range(2,10,2):
         print(i)
主站蜘蛛池模板: 乃东县| 昆明市| 白山市| 齐河县| 正镶白旗| 诏安县| 区。| 柳林县| 平原县| 昭苏县| 南昌县| 隆子县| 清苑县| 邹平县| 惠东县| 黄梅县| 泸定县| 正安县| 伊宁县| 白玉县| 黑山县| 东阳市| 虎林市| 浦江县| 九台市| 乌鲁木齐县| 黄浦区| 乌审旗| 永德县| 揭西县| 鱼台县| 荣成市| 大名县| 云安县| 辽中县| 集安市| 全州县| 靖边县| 青田县| 平远县| 宣威市|