Python for 循環(huán)語(yǔ)句

2021-09-03 17:09 更新

Python for 循環(huán)語(yǔ)句

Python ?for ?循環(huán)可以遍歷任何序列的項(xiàng)目,如一個(gè)列表或者一個(gè)字符串。

語(yǔ)法:

?for ?循環(huán)的語(yǔ)法格式如下:

for iterating_var in sequence: 
   statements(s)

流程圖:


實(shí)例:

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

for letter in 'Python':  # 第一個(gè)實(shí)例
    print '當(dāng)前字母 :', letter

fruits = ['banana', 'apple', 'mango']
for fruit in fruits:  # 第二個(gè)實(shí)例
    print '當(dāng)前字母 :', fruit

print "Good bye!"

以上實(shí)例輸出結(jié)果:

Current Letter : P

Current Letter : y

Current Letter : t

Current Letter : h

Current Letter : o

Current Letter : n

Current fruit : banana

Current fruit : apple

Current fruit : mango

Good bye!


通過(guò)序列索引迭代

另外一種執(zhí)行循環(huán)的遍歷方式是通過(guò)索引,如下實(shí)例:

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

fruits = ['banana', 'apple',  'mango']
for index in range(len(fruits)):
   print '當(dāng)前水果 :', fruits[index]

print "Good bye!"

以上實(shí)例輸出結(jié)果:

當(dāng)前水果 : banana

當(dāng)前水果 : apple

當(dāng)前水果 : mango

Good bye!

以上實(shí)例我們使用了內(nèi)置函數(shù) ?len()? 和 ?range()?函數(shù) ,?len() ?返回列表的長(zhǎng)度,即元素的個(gè)數(shù)。 ?range()? 返回一個(gè)序列的數(shù)。


循環(huán)使用 else 語(yǔ)句

在 Python 中,?for … else? 表示這樣的意思,?for ?中的語(yǔ)句和普通的沒(méi)有區(qū)別,?else ?中的語(yǔ)句會(huì)在循環(huán)正常執(zhí)行完(即 ?for ?不是通過(guò) ?break ?跳出而中斷的)的情況下執(zhí)行,?while … else? 也是一樣。

如下實(shí)例:

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

for num in range(10,20):  # 迭代 10 到 20 之間的數(shù)字
   for i in range(2,num): # 根據(jù)因子迭代
      if num%i == 0:      # 確定第一個(gè)因子
         j=num/i          # 計(jì)算第二個(gè)因子
         print '%d 等于 %d * %d' % (num,i,j)
         break            # 跳出當(dāng)前循環(huán)
   else:                  # 循環(huán)的 else 部分
      print num, '是一個(gè)質(zhì)數(shù)'

以上實(shí)例輸出結(jié)果:

10 等于 2 * 5

11 是一個(gè)質(zhì)數(shù)

12 等于 2 * 6

13 是一個(gè)質(zhì)數(shù)

14 等于 2 * 7

15 等于 3 * 5

16 等于 2 * 8

17 是一個(gè)質(zhì)數(shù)

18 等于 2 * 9

19 是一個(gè)質(zhì)數(shù)


更多實(shí)例

打印 1-9 三角形陣列:

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

for i in range(1,11):
    for k in range(1,i):
        print k,
    print "\n"

以上實(shí)例輸出結(jié)果:

1 2 

1 2 3 

1 2 3 4 

1 2 3 4 5 

1 2 3 4 5 6 

1 2 3 4 5 6 7 

1 2 3 4 5 6 7 8 

1 2 3 4 5 6 7 8 9 

打印空心等邊三角形:

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

# 打印空心等邊三角形 
rows = int(raw_input('輸入行數(shù):\n'))
for i in range(0, rows):
    for k in range(0, 2 * rows - 1):
        if (i != rows - 1) and (k == rows - i - 1 or k == rows + i - 1):
            print " * ",
        elif i == rows - 1:
            if k % 2 == 0:
                print " * ",
            else:
                print "   ",
        else:
            print "   ",
    print "\n"

運(yùn)行結(jié)果:

 輸入行數(shù):

                 *                  

             *       *              

         *               *          

     *                       *      

 *       *       *       *       *  


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)