成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

控制語句執(zhí)行流程

SwordFly / 515人閱讀

1.1 用if選擇執(zhí)行語句 1.1.1 if基礎(chǔ)

if語句的作用是選擇執(zhí)行語句,其最簡(jiǎn)單的形式如下:

  if <條件>:
     <語句>

if <條件>:
     <語句1>
  else:
     <語句2>

if <條件1>:
      <語句1>
  elif <條件 2>:
     <語句2>
  else:
       <語句3>
1.1.2 if語句的嵌套
if <條件>:
     if <條件>:          #此句開始的以后共4行都屬于第一個(gè)if條件的嵌套,注意及縮進(jìn)量大小
          <語句1>
     elif <條件>:
         <語句2>
  else:
     <語句3>

   

1.2 用for循環(huán)執(zhí)行語句 1.2.1 for基礎(chǔ)

for語句的形式如下:

  

for <循環(huán)變量> in <遍歷對(duì)象>:
     <語句1>
  else:
     <語句2>


for i in [1,2,3,4,5]:              #i是循環(huán)變量,每次循環(huán),i會(huì)依次取得后面列表中一個(gè)值
     print (i,"的平方是:",i*i)      #此處理縮進(jìn)的語句就是循環(huán)體
 else:                              #for循環(huán)正常結(jié)束時(shí)其后縮進(jìn)的語句就會(huì)執(zhí)行
     print ("循環(huán)結(jié)束!")
1.2.2 for語句與break語句、continue語句

1. break語句作用是中斷循環(huán)的執(zhí)行,如果在for循環(huán)中執(zhí)行了break語句,for語句的遍歷就會(huì)立即終止,即使還有未遍歷完的數(shù)據(jù),還是會(huì)立即終止for循環(huán)語句。
2. continue語句作用是提前停止循環(huán)體的執(zhí)行,開始下一輪循環(huán)。在for語句中如果執(zhí)行了continue語句,則continue語句后的循環(huán)體語句不會(huì)被執(zhí)行,即提前結(jié)束了本次循環(huán),然后進(jìn)入下一個(gè)遍歷循環(huán)。

for i in [1,2,3,4,5]:
        print(i)
        if i == 2:               #當(dāng)i等于2時(shí),執(zhí)行其后縮進(jìn)的continue語句
         continue              #執(zhí)行本語句后,其后的if語句和print()不會(huì)執(zhí)行
        print (i,"的平方是:",i*i)
        if i == 4:               #當(dāng)i等于4時(shí),執(zhí)行其后縮進(jìn)的break語句
         break                 #執(zhí)行break時(shí),終止循環(huán)
else:                       #因?yàn)閒or循環(huán)中的break語句執(zhí)行中斷了for循環(huán)
    print ("循環(huán)結(jié)束!")

adct = {"apple":15,"banana":20,"pear":35}
  for key, value in adct.items():     #同時(shí)遍歷鍵和值
     也可以使用 元組  列表 字符串 的賦值遍歷
     print (key,":",value)

  for key in adct.keys():             #只遍歷鍵
     print(key)

  for value in adct.values():         #只遍歷值
     print (value)
1.2.3 for語句與range()函數(shù)

for語句中的對(duì)象集合可以是列表、字典以及元組等,也可以通過range()函數(shù)產(chǎn)生一個(gè)整數(shù)列表,以完成計(jì)數(shù)循環(huán)。range()函數(shù)的原型如下:

range( [start,] stop[, step])

其參數(shù)含義如下:

start 可選參數(shù),起始數(shù),默認(rèn)值為0;

stop 終止數(shù),如果range只有一個(gè)參數(shù)x,那么range生產(chǎn)一個(gè)從0至x-1的整數(shù)列表;

step 可選參數(shù),步長(zhǎng),即每次循環(huán)序列增長(zhǎng)值。

產(chǎn)生的整數(shù)序列的最大值為stop-l。

for i in range(0,7,2):
        print (i)

range()函數(shù)并不是在調(diào)用時(shí)一次生成整個(gè)序列,而是遍歷一次才產(chǎn)生一個(gè)值,以減少內(nèi)存的占用,其本質(zhì)是一個(gè)迭代器

例題:計(jì)算并輸出由用戶指定的兩個(gè)整數(shù)之間所有素?cái)?shù)

x = (int (input ("請(qǐng)輸入開始值(整數(shù)):")),int(input("請(qǐng)輸入一個(gè)結(jié)束值(整數(shù)):")))
                               #輸入兩個(gè)整數(shù),并放入一個(gè)元組中
x1 = min (x)                   #獲取兩個(gè)整數(shù)中較小的一個(gè)整數(shù)
x2 = max(x)                     #獲取兩個(gè)整數(shù)中較大的一個(gè)整數(shù)
for n in range (x1, x2+1):     #用range()產(chǎn)生從x1至x2的序列
    for i in range(2,n):      #用range()產(chǎn)生從2至當(dāng)前值n-1的序列
        if n % i == 0:           #如果余數(shù)為0則執(zhí)行其后縮進(jìn)的break語句,中斷內(nèi)循環(huán)
            break
    else:                       #循環(huán)中斷,則表明至少有一個(gè)整數(shù)因子,不是素?cái)?shù),不輸出
            print (n,"是素?cái)?shù)。")
1.2.4 for語句與內(nèi)置迭代函數(shù)
內(nèi)置迭代函數(shù) 使用說明
enumerate (seq ) 編號(hào)迭代在迭代時(shí)既返回序列中的元素,又返回該元素在序列中的編號(hào)(編號(hào)從0開始)。    
sorted (seq) 先遍歷序列中較小的值,后遍歷序列中較大的值,當(dāng)然這要求序列中的數(shù)據(jù)可以是排序的同類數(shù)據(jù)
reversed (seq) 翻轉(zhuǎn)迭代從尾至頭進(jìn)行遍歷
zip (seql,seq2,...) 并行迭代同時(shí)遍歷函數(shù)中給出的seql、seq2等序列中同一序號(hào)的元素,并行迭代函數(shù)中序列值的長(zhǎng)度不一致時(shí),只遍歷到最短的序列的長(zhǎng)度。
for i,item in enumerate("abcd"):
      print ("第%d個(gè)字符是:%s" % (i,item))

for i in sorted([3,1,6,0]):
      print(i)

lsta = (1,2)
lstb = (3,4)
lstc = (5, 6, 7)
for i,j,k in zip (lsta, lstb, lstc):
      print ("%d:%d:%d" % (i,j,k))

1.3 用while循環(huán)執(zhí)行語句 1.3.1 while基礎(chǔ)

while語句的基本形式如下:

while <條件>:
      <語句1>
  else:
      <語句2>           #如果循環(huán)未被break終止,則執(zhí)行


alst = [1,2,3,4,5]
total = len (alst)         #獲取列表中元素總數(shù)
i =0                       #初始化循環(huán)控制變量
while i < total:           #i從0至total-1
    print (i+1,"的平方是:",alst [i] *alst[i])
    i=i+1             #修改循環(huán)控制變量
else:
    print ("循環(huán)結(jié)束!")
1.3.2 增量賦值運(yùn)算符

基本的運(yùn)算符都有對(duì)應(yīng)的增量賦值運(yùn)算符:

    +、-、*、/、//、**、%、&、|、^、>>、<<

基本寫法形如:

`x += 1`
1.4 推導(dǎo)或內(nèi)涵(list comprehension)

列表、元組、字典等結(jié)構(gòu)數(shù)據(jù)類型給使用大量數(shù)據(jù)帶來極大的方便,但可能你還需要對(duì)序列中的數(shù)據(jù)進(jìn)行處理得到另一組數(shù)據(jù)序列,本節(jié)介紹從一個(gè)序列類型的數(shù)據(jù)集推導(dǎo)出另一個(gè)序列類型的數(shù)據(jù)集。

1.4.1 推導(dǎo)基礎(chǔ)

在Python中是指以緊湊的方式對(duì)列表、元組、字典等序列或一系列的元素進(jìn)行處理,處理結(jié)果仍然被放到一個(gè)列表、字典等序列之中的語法形式。

典型的列表推導(dǎo)基本形式如下: 

[ for i in aiterator]

aiterator是指一個(gè)可遍歷的對(duì)象,比如列表、元組,也可以是range()函數(shù)。其語義為:用循環(huán)變量i去遍歷aiterator,并且將i相關(guān)表達(dá)式的值放入一個(gè)列表中。

1.4.2 推導(dǎo)進(jìn)階

列表推導(dǎo)式和字典推導(dǎo)式不僅可以對(duì)遍歷的元素進(jìn)行全部處理,還可以使用if語句實(shí)現(xiàn)有選擇地處理遍歷序列中的元素。其基本形式如下:

  

[ for i in aiterator if <條件>]
  {key_exp:value_exp for key_exp,value_exp in aiterator if<條件>}

如果要獲得一個(gè)1~10中所有數(shù)的平方,且平方值為偶數(shù)的一個(gè)列表,就可以使用如下代碼來實(shí)現(xiàn):

  

square_odd = [i**i for i in range (1, 11) if i**i %2 == 1]

對(duì)于字典推導(dǎo)式也可以使用if來進(jìn)行部分元素的處理。

如果在推導(dǎo)式中的求值表達(dá)式或條件表達(dá)式中應(yīng)用函數(shù),則可以構(gòu)造更加復(fù)雜的推導(dǎo)式來實(shí)現(xiàn)對(duì)序列中的數(shù)據(jù)進(jìn)行批量的處理.

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/42865.html

相關(guān)文章

  • Java編程基礎(chǔ)04——流程控制語句

    摘要:順序結(jié)構(gòu)語句了解什么是流程控制語句流程控制語句可以控制程序的執(zhí)行流程。選擇結(jié)構(gòu)語句格式及其使用掌握語句的格式比較表達(dá)式語句體比較表達(dá)式語句體比較表達(dá)式語句體語句體執(zhí)行流程首先計(jì)算比較表達(dá)式看其返回值是還是,如果是,就執(zhí)行語句體,語句結(jié)束。 1.順序結(jié)構(gòu)語句(了解) A:什么是流程控制語句 流程控制語句:可以控制程序的執(zhí)行流程。 B:流程控制語句的分類 順序結(jié)構(gòu) 選擇結(jié)構(gòu) 循環(huán)...

    shaonbean 評(píng)論0 收藏0
  • Java雜記3—流程控制之條件

    摘要:流程控制首先來介紹程序的流程控制。后面跟一個(gè)代碼塊邏輯關(guān)系是當(dāng)布爾表達(dá)式為真的時(shí)候執(zhí)行代碼塊,為假的時(shí)候不執(zhí)行。 流程控制 首先來介紹程序的流程控制。 所謂的流程控制,就是在我們前面的課程中我們已經(jīng)學(xué)過了變量,數(shù)據(jù)類型,運(yùn)算符,表達(dá)式,這些都是計(jì)算機(jī)編程的基本元素,但是我們程序的基本執(zhí)行單元應(yīng)該是語句,程序執(zhí)行,執(zhí)行的不是表達(dá)式,而是執(zhí)行語句。就好像我們小時(shí)候先學(xué)認(rèn)字兒,再學(xué)組詞,但最...

    jackzou 評(píng)論0 收藏0
  • 1、引用類型變量的創(chuàng)建及使用 2、流程控制語句之選擇語句 3、流程控制語句之循環(huán)語句 4、循環(huán)高級(jí)

    摘要:如果是,就執(zhí)行語句體如果是,就不執(zhí)行語句體案例代碼對(duì)變量進(jìn)行判斷中的條件是語句格式第二種語句格式第二種書寫格式比較表達(dá)式語句體語句體執(zhí)行流程首先計(jì)算比較表達(dá)式的值,看其返回值是還是。內(nèi)層使用,終止內(nèi)層循環(huán),繼續(xù)外層循環(huán)。 01創(chuàng)建引用類型變量公式 * A: 創(chuàng)建引用類型變量公式 * a: 我們要學(xué)的Scanner類是屬于引用數(shù)據(jù)類型,我們先了解下引用數(shù)據(jù)類型。 * b:...

    xfee 評(píng)論0 收藏0
  • [Python]第二章(條件語句和循環(huán)語句)—建議收藏

    摘要:循環(huán)結(jié)構(gòu)是在一定條件下反復(fù)執(zhí)行某段程序的流程結(jié)構(gòu),被反復(fù)執(zhí)行的程序被稱為循環(huán)體。語句用在和循環(huán)中。語句用來告訴跳過當(dāng)前循環(huán)的剩余語句,然后繼續(xù)進(jìn)行下一輪循環(huán)。語句是空語句,是為了保持程序結(jié)構(gòu)的完整性。 各位小伙伴們大家好,在此之前我跟大家介紹過[python]的第一章,如果還沒有看的小伙伴們...

    snowLu 評(píng)論0 收藏0
  • q'qJavaScript學(xué)習(xí)第三天筆記(語句

    摘要:循環(huán)語句循環(huán)語句是什么循環(huán)語句是一系列反復(fù)執(zhí)行到符合特定條件的語句。示例代碼如下跳轉(zhuǎn)語句什么是跳轉(zhuǎn)語句跳轉(zhuǎn)語句就是使得代碼的執(zhí)行可以從一個(gè)位置到另一個(gè)位置,跳轉(zhuǎn)語句包括和兩種。 語句 語句 語句的概述 1.描述:在JavaScript中,語句使用分號(hào)(;)進(jìn)行分隔??梢栽诿啃芯帉懸粭l語句,也可以在每行編寫多 條語句(建議每行只編寫一條語句)。JavaScript解釋器按照語句...

    chenjiang3 評(píng)論0 收藏0
  • 溫故js系列(8)-詳解代碼中的流程控制

    摘要:甚至包括原型鏈上的所有可枚舉的屬性顯然,我們習(xí)慣的數(shù)組遍歷的結(jié)果是只有這樣的結(jié)果的。當(dāng)代碼運(yùn)行到語句時(shí),執(zhí)行上下文的作用域鏈臨時(shí)被改變了。 前端學(xué)習(xí):教程&開發(fā)模塊化/規(guī)范化/工程化/優(yōu)化&工具/調(diào)試&值得關(guān)注的博客/Git&面試-前端資源匯總 歡迎提issues斧正:流程控制 JavaScript-流程控制 JavaScript是單線程的,一個(gè)語句一個(gè)語句的執(zhí)行。語句是執(zhí)行過程中的流...

    blastz 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<