>通用格式if語(yǔ)句一般形式如下:if:elif:else:另外需要注意的是,Python中是沒(méi)有switch/case語(yǔ)句的while循環(huán)while語(yǔ)句是Python語(yǔ)言中最通用的迭代結(jié)構(gòu),簡(jiǎn)而言之,只要頂端測(cè)試一直計(jì)算到真值,就會(huì)重復(fù)執(zhí)行一個(gè)語(yǔ)句塊。>>一般格式while:else:>>break,continue,pass和循環(huán)elsebreak跳出最近所在的循環(huán)(跳過(guò)整個(gè)循環(huán)語(yǔ)句)。continue跳到最近所在循環(huán)的開(kāi)頭處(來(lái)到循環(huán)的首行)" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python中的條件判斷語(yǔ)句與循環(huán)語(yǔ)句用法小結(jié)

系統(tǒng) 1781 0

if語(yǔ)句

>>通用格式
if語(yǔ)句一般形式如下:

            
if 
            
              :
 
              
                
elif 
                
                  :
 
                  
                    
else:
 
                    
                    
                  
                
              
            
          

另外需要注意的是,Python中是沒(méi)有switch/case語(yǔ)句的


while循環(huán)

while語(yǔ)句是Python語(yǔ)言中最通用的迭代結(jié)構(gòu),簡(jiǎn)而言之,只要頂端測(cè)試一直計(jì)算到真值,就會(huì)重復(fù)執(zhí)行一個(gè)語(yǔ)句塊。

>>一般格式

            
while 
            
              :
 
              
                
else:
 
                
                  
>>break,continue,pass和循環(huán)else

                
              
            
          

break

跳出最近所在的循環(huán)(跳過(guò)整個(gè)循環(huán)語(yǔ)句)。

continue

跳到最近所在循環(huán)的開(kāi)頭處(來(lái)到循環(huán)的首行)。

pass

什么事也不做,只是空占位符語(yǔ)句。

循環(huán)else塊

只有當(dāng)前循環(huán)正常離開(kāi)時(shí)才會(huì)執(zhí)行(也就是沒(méi)有碰到break語(yǔ)句)

>>一般循環(huán)格式
加入break和continue語(yǔ)句后,while的一般格式變?yōu)?

            
while 
            
              :
 
              
                
 if 
                
                  :break
 if 
                  
                    :continue
else:
 
                    
                      
>>pass

                    
                  
                
              
            
          

pass語(yǔ)句是無(wú)運(yùn)算的占位符,當(dāng)語(yǔ)法需要語(yǔ)句并且還沒(méi)有任何實(shí)用的語(yǔ)句可寫(xiě)時(shí),就可以使用它。

>>循環(huán)else
在while語(yǔ)句中加入else和C/C++中的語(yǔ)法不太一樣,這里詳細(xì)說(shuō)明一下。else后面的代碼只有當(dāng)循環(huán)正常結(jié)束時(shí)才會(huì)執(zhí)行,如果是用break跳出循環(huán)的,這部分代碼就不會(huì)運(yùn)行,具體看一個(gè)求質(zhì)數(shù)的例子:

            
x = y // 2
while x > 1:
 if y % x == 0:
  print(y,'has factor',x)
  break
 x -= 1
else:
 print(y,'is prime')

          

再看一個(gè)對(duì)比的例子,沒(méi)有使用else的情況:

            
found=False
while x and not found:
 if (matchx[0]):
  print('Ni')
  found=True
 else:
  x=x[1:]
if not found:
 print('not found')
使用else后的情況:

while x:
 if (match(x[0])):
  print('Ni')
  break
else:
 print('not found')


          

for循環(huán)

for循環(huán)在Python中是一個(gè)通用的序列迭代器:可以遍歷任何有序的序列對(duì)象內(nèi)元素。for語(yǔ)句可以用于字符串、列表、元組、其他內(nèi)置可迭代對(duì)象。

>>一般格式

            
for 
            
               in 
              
                :
 
                
                  
else:
 
                  
                  
                
              
            
          

此處的else的作用和while語(yǔ)句中的一樣。另外需要注意的是,當(dāng)Python運(yùn)行for循環(huán)時(shí),會(huì)逐個(gè)將序列對(duì)象中的元素賦值給目標(biāo),然后為每個(gè)元素執(zhí)行循環(huán)體。

編寫(xiě)循環(huán)的技巧

內(nèi)置range函數(shù):返回一系列連續(xù)增加的整數(shù),可作為for中的索引
內(nèi)置zip函數(shù):返回并行元素的元組的列表,可用于在for中遍歷數(shù)個(gè)數(shù)列
>>循環(huán)計(jì)數(shù)器:while和range
range

當(dāng)range函數(shù)只有一個(gè)參數(shù)時(shí),會(huì)返回從零算起的整數(shù)列表,但其中不包括該參數(shù)的值。如果傳進(jìn)兩個(gè)參數(shù),那第一個(gè)參數(shù)是上邊界,第二個(gè)參數(shù)是下邊界。如果傳進(jìn)三個(gè)參數(shù)時(shí),第三個(gè)參數(shù)表示步進(jìn)值。

range提供了一種簡(jiǎn)單的方法,重復(fù)特定次數(shù)的動(dòng)作:

            
for i in range(5):
 print(i,'Pythons')

          

相應(yīng)的C++代碼則是:

            
int i;
for(i = 0;i < 5;++i)
{
 std::cout<
            
              <<"Python";
}

            
          

>>并行遍歷:zip和map
zip會(huì)取得一個(gè)或多個(gè)序列為參數(shù),然后返回元組的列表,將這些序列中的并排的元素配成對(duì)。

            
L1=[1,2,3,4]
L2=[5,6,7,8]
list(zip(L1,L2))

          

上述代碼的執(zhí)行結(jié)果是:

            
[(1,5),(2,6),(3,7),(4,8)]

          

當(dāng)參數(shù)的長(zhǎng)度不同時(shí),zip會(huì)以最短序列的長(zhǎng)度為準(zhǔn)來(lái)截?cái)嗨玫降脑M。

使用zip構(gòu)造字典:

            
keys=['spam','eggs','totast']
values=[1,2,5]
D = dict(zip(keys,values))

          

>>產(chǎn)生偏移和元素:enumerate
enumerate函數(shù)一個(gè)比較新的內(nèi)置函數(shù),它能同時(shí)返回元素值和偏移值:

            
s='spam'
for (offset,item) in enumerate(s):
 print(item,'appears at offset',offset)

          


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 建德市| 陆河县| 衡阳市| 昭通市| 安龙县| 成安县| 前郭尔| 剑川县| 宝应县| 桦甸市| 秀山| 柘城县| 秦皇岛市| 格尔木市| 安泽县| 镇安县| 滨海县| 南乐县| 思南县| 屏东县| 疏勒县| 广宗县| 武川县| 右玉县| 台东县| 都匀市| 耿马| 湄潭县| 大埔县| 微山县| 浦江县| 安化县| 岱山县| 大厂| 延津县| 唐海县| 花垣县| 乌恰县| 巴塘县| 南阳市| 商洛市|