新聞中心
while 循環(huán)的語法格式如下:

成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比豐潤網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式豐潤網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋豐潤地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。
[init_statements] while test_expression : body_statements [iteration_statements]
while 循環(huán)在每次執(zhí)行循環(huán)體之前,都要先對 test_expression 循環(huán)條件求值,如果循環(huán)條件為真,則運(yùn)行循環(huán)體部分。從上面的語法格式來看,迭代語句 iteration_statements 總是位于循環(huán)體的最后,因此只有當(dāng)循環(huán)體能成功執(zhí)行完成時(shí),while 循環(huán)才會(huì)執(zhí)行迭代語句 iteration_statements。
從這個(gè)意義上看,while 循環(huán)也可被當(dāng)成分支語句使用,即如果 test_expression 條件一開始就為假,則循環(huán)體部分將永遠(yuǎn)不會(huì)獲得執(zhí)行的機(jī)會(huì)。
下面程序示范了一個(gè)簡單的 while 循環(huán):
# 循環(huán)的初始化條件
count_i = 0
# 當(dāng)count_i小于10時(shí),執(zhí)行循環(huán)體
while count_i < 10 :
print("count:", count_i)
# 迭代語句
count_i += 1
print("循環(huán)結(jié)束!")在使用 while 循環(huán)時(shí),一定要保證循環(huán)條件有變成假的時(shí)候:否則這個(gè)循環(huán)將成為一個(gè)死循環(huán),永遠(yuǎn)無法結(jié)束這個(gè)循環(huán)。例如如下代碼:
# 下面是一個(gè)死循環(huán)
count_i2 = 0
while count_i2 < 10 :
print("不停執(zhí)行的死循環(huán):", count_i2)
count_i2 -=1
print("永遠(yuǎn)無法跳出的循環(huán)體")在上面代碼中,count_i2 的值越來越小,這將導(dǎo)致 count_i2 的值永遠(yuǎn)小于 10,count_i2<10 循環(huán)條件一直為 True,從而導(dǎo)致這個(gè)循環(huán)永遠(yuǎn)無法結(jié)束。
與前面介紹分支語句類似的是,while 循環(huán)的循環(huán)體中所有代碼必須使用相同的縮進(jìn),否則 Python 也會(huì)引發(fā)錯(cuò)誤。例如如下程序:
# 循環(huán)的初始化條件
count_i = 0
# 當(dāng)count小于10時(shí),執(zhí)行循環(huán)體
while count_i < 10:
print('count_i的值', count_i)
count_i += 1運(yùn)行上面程序,將會(huì)看到執(zhí)行一個(gè)死循環(huán)。這是由于 count_i += 1 代碼沒有縮進(jìn),這行代碼就不屬于循環(huán)體。這樣程序中的 count_1 將一直是 0,從而導(dǎo)致 count_i < 10 一直都是 True,因此該循環(huán)就變成了一個(gè)死循環(huán)。
使用while循環(huán)遍歷列表和元組
由于列表和元組的元素都是有索引的,因此程序可通過 while 循環(huán)、列表或元組的索引來遍歷列表和元組中的所有元素。例如如下程序:
a_tuple = ('fkit', 'crazyit', 'Charli')
i = 0
# 只有i小于len(a_list),繼續(xù)執(zhí)行循環(huán)體
while i < len(a_tuple):
print(a_tuple[i]) # 根據(jù)i來訪問元組的元素
i += 1運(yùn)行上面程序,可以看到如下輸出結(jié)果:
fkit crazyit Charli
按照上面介紹的方法,while 循環(huán)也可用于遍歷列表。
下面示范一個(gè)小程序,實(shí)現(xiàn)對一個(gè)整數(shù)列表的元素進(jìn)行分類,能整除 3 的放入一個(gè)列表中;除以 3 余 1 的放入另一個(gè)列表中;除以 3 余 2 的放入第三個(gè)列表中:
src_list = [12, 45, 34,13, 100, 24, 56, 74, 109]
a_list = [] # 定義保存整除3的元素
b_list = [] # 定義保存除以3余1的元素
c_list = [] # 定義保存除以3余2的元素
# 只要src_list還有元素,繼續(xù)執(zhí)行循環(huán)體
while len(src_list) > 0:
# 彈出src_list最后一個(gè)元素
ele = src_list.pop()
# 如果ele % 2不等于0
if ele % 3 == 0 :
a_list.append(ele) # 添加元素
elif ele % 3 == 1:
b_list.append(ele) # 添加元素
else:
c_list.append(ele) # 添加元素
print("整除3:", a_list)
print("除以3余1:",b_list)
print("除以3余2:",c_list) 本文標(biāo)題:創(chuàng)新互聯(lián)Python教程:Pythonwhile循環(huán)詳解
本文來源:http://m.fisionsoft.com.cn/article/ccojoej.html


咨詢
建站咨詢
