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

4.2 循環(huán)語句

循環(huán)語句是在一定條件下反復(fù)執(zhí)行某段程序的流程結(jié)構(gòu),循環(huán)語句是由循環(huán)體及循環(huán)的終止條件兩部分組成的。被反復(fù)執(zhí)行的程序稱為循環(huán)體。能否繼續(xù)重復(fù),取決于循環(huán)的終止條件。

Python中的循環(huán)語句有兩種:while循環(huán)和for循環(huán)。下面就分別介紹這兩種循環(huán)。

4.2.1 while循環(huán)

Python中while循環(huán)的基本語法格式如下。

while 判斷條件:
      語句

使用while循環(huán)時必須注意冒號和縮進。

【實例4-2】計算1到100的總和。

n = 100
    sum = 0
    counter = 1
    while counter <= n:
      sum = sum + counter
      counter += 1
    print("1到%d之和為:%d"% (n, sum))

在上面這段程序中,使用while循環(huán)判斷累加數(shù)值是否超過100,如果沒有超過100,繼續(xù)循環(huán),否則退出循環(huán),顯示最終的結(jié)果。程序運行結(jié)果如下圖所示。

4.2.2 for循環(huán)

for循環(huán)可以遍歷任何序列的項目,如前面介紹的一個列表或一個字符串。

for循環(huán)的一般格式如下。

for <variable> in <sequence>:
      <statements>
    else:
      <statements>

其中sequence表示一個序列,可以是列表或字符串。

【實例4-3】序列的循環(huán)使用。

country=["China", "American", "France", "England", "Russian"]
    for x in country:
      print(x)

在上面程序中,首先定義了一個序列,序列中是幾個國家的名稱,其次在for循環(huán)中遍歷該序列中的每個值并顯示。程序運行結(jié)果如下圖所示。

在循環(huán)體中,也可以使用break和continue語句,其中break語句可以跳出for或while的循環(huán)體。continue語句被用來跳過當(dāng)前循環(huán)塊中的剩余語句,然后繼續(xù)進行下一輪循環(huán)。

此外,for或while循環(huán)與條件語句可以相互嵌套。

【實例4-4】循環(huán)語句中含有條件語句。

for letter in 'Hello, Python! ':
      if letter=='! ':
        break
      print ("現(xiàn)在顯示的字母是:", letter)

在上面的程序中,for循環(huán)中遍歷每一個字符串,每次從字符串中取一個字符,然后在循環(huán)體中判斷每次取的字符串中的字符是否為“! ”,如果不是“! ”,則顯示這個字符,否則,退出循環(huán)體。程序運行結(jié)果如下圖所示。

下面再看一個稍微復(fù)雜一些的實例:

【實例4-5】使用了嵌套循環(huán)輸出2~10的素數(shù)。

i = 2
    while(i < 10):
      j = 2
      while(j <= (i/j)):
      if not(i%j): break
      j = j + 1
      if (j > i/j) : print (i, " 是素數(shù)")
      i = i + 1

上面的程序使用了兩層循環(huán),在外層循環(huán)中判斷數(shù)值是否小于10,如果超過10就退出循環(huán),小于10則繼續(xù)進入內(nèi)層循環(huán),在內(nèi)層循環(huán)中判斷是否為素數(shù),如果不符合條件,直接退出內(nèi)層循環(huán),繼續(xù)執(zhí)行外層循環(huán)的內(nèi)容。程序運行結(jié)果如下圖所示。

【實例4-6】輸出9×9的乘法口訣表。

分析:這個程序使用兩層循環(huán),外層變量為1~9,內(nèi)層變量依賴于外層變量。詳細代碼如下。

for i in range(1,10):
      for j in range(1, i+1):
        print("""%d*%d=%d""" % (i, j, i*j), end=" ")
      print()

上面這個程序同樣使用了循環(huán)嵌套,外層循環(huán)判斷數(shù)值是否為1~9,內(nèi)層循環(huán)計算對應(yīng)數(shù)值的乘法口訣,內(nèi)層變量依賴于外層變量,同時顯示計算結(jié)果,在外層循環(huán)中使用print()函數(shù)表示換行操作。程序運行結(jié)果如下圖所示。

主站蜘蛛池模板: 潢川县| 孟村| 江山市| 扶绥县| 高邑县| 兴山县| 张家界市| 水城县| 长海县| 沁阳市| 阳江市| 连平县| 涡阳县| 黄平县| 呼图壁县| 巴彦淖尔市| 罗甸县| 长寿区| 桐城市| 依兰县| 澎湖县| 隆昌县| 闽侯县| 西畴县| 抚州市| 时尚| 昌都县| 乌兰察布市| 舟曲县| 高安市| 金秀| 桐乡市| 泸溪县| 慈溪市| 治县。| 长阳| 新沂市| 上思县| 八宿县| 梓潼县| 娱乐|