乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      【風變編程-python語法】第五、六關(消滅該死的重復)-循環(huán)-筆記

       xfr 2020-09-15

      python基礎語法–循環(huán)語句的使用

      • 1 for…in…循環(huán)

      • 1.1 空房間
        1.2 range()函數(shù)

      • 2 while 循環(huán)語句

      • 2.1 放行條件

      • 2.2 兩種循環(huán)對比

      • - [ 練習作業(yè)]

      • (題1) 選擇性打印數(shù)字
        (題 2) 換座位

      • 3 用數(shù)據做判斷

      • 3.1 布爾運算:用數(shù)據做邏輯判斷
        3.2 布爾值:True (真)和False(假)

      • 4 四個新語句

      • 4.1 break 語句

      • 4.2 continue 語句
        4.3 pass 語句
        4.4 else 語句

      • - [ 練習作業(yè)]

      • (題1) 囚徒困境
        (題 2) 囚徒困境(2)
        (題 3) 查字典

      循環(huán)語句使得計算機能夠重復性地、自動地執(zhí)行指令

      1 for…in…循環(huán)語句

      • 格式:

      #代碼
      list=[1,2,3,4,5,6]for i in range(6):
         print(list[i])#顯示1234561234567891011
      •  其中,i看作空房間,而list中的元素一次排隊進入空房間;for結束后,i等于最后進入的元素

      • list可以是列表、字典、字符串

      #代碼
      #列表取元素for i in [1,2,3,4,5,6]:
         print(i)#列表取鍵值
      dict = {'日本':'東京','英國':'倫敦','法國':'巴黎'}for i in dict:
         print(i)#字符串取每個字符(整數(shù)、浮點數(shù)都是字符串)for i in '吳承恩':
         print(i)a = '100'b = '0.01'for i in a:
         print(i)for i in b:
         print(i)#顯示123456日本
      英國
      法國
      吳
      承
      恩1000.0112345678910111213141516171819202122232425262728293031323334353637383940414243
      • 遍歷其他數(shù)據集,range()函數(shù):

      • 1)range(X):生成0-X-1的整數(shù)序列;;range(a,b) 可生成了一個【取頭不取尾】的整數(shù)序列

      • 應用于 ①固定代碼的重復 、②取數(shù)間隔

      #代碼
      #固定代碼重復:for i in range(3):
         print('我很棒')for i in range(8):
         print('書桓走的第'+str(i)+'天,想他')# 取數(shù)間隔:for i in range(0,10,3):
         print(i)
       # 用for循環(huán)完成1-100分別乘以5的計算for i in range(1,10):
         print(i*5)#顯示
      我很棒
      我很棒
      我很棒
      書桓走的第0天,想他
      書桓走的第1天,想他
      書桓走的第2天,想他
      書桓走的第3天,想他
      書桓走的第4天,想他
      書桓走的第5天,想他
      書桓走的第6天,想他
      書桓走的第7天,想他036951015202530354045123456789101112131415161718192021222324252627282930313233343536373839

      2 while 循環(huán)

      • 格式:

      #代碼
      a = 0                #先定義變量a,并賦值while a < 5:         #設定一個放行條件:a要小于5,才能辦事
         a = a + 1  # 滿足條件時,就辦事:將a+1
         print(a)   # 繼續(xù)辦事:將a+1的結果打印出來
      #顯示123451234567891011
      •  while是“當”,后面跟的是一個放行條件,條件被滿足時,會循環(huán)執(zhí)行while內部的代碼。

      • 這里注意有沒有字符縮進,屬于while內部的代碼和不屬于的

      #代碼:輸入密碼驗證:
      password = ''  # 變量password用來保存輸入的密碼while password!='816':
         password=input('嘗試輸入密碼:')print('歡迎回家!')#顯示
      嘗試輸入密碼:123嘗試輸入密碼:222嘗試輸入密碼:22嘗試輸入密碼:556嘗試輸入密碼:81嘗試輸入密碼:816歡迎回家!12345678910111213

      for…in…與while…循環(huán)對比:

      • 工作量確定時,用for…in…循環(huán);不確定時,適合用while…循環(huán);

      • for循環(huán)和while循環(huán)都可以【把一件事情做N遍】,for更加簡潔;

      #代碼print('用for..in..循環(huán)把詩句打印3遍')for i in range(1,4) :
         print('明日復明日,明日何其多。')print('用while...循環(huán)把詩句打印3遍')j = 1while j<4 :
         print('明日何其多,明日何其多。')
         j =j+1#顯示
      用for..in..循環(huán)把詩句打印3遍
      明日復明日,明日何其多。
      明日復明日,明日何其多。
      明日復明日,明日何其多。
      用while...循環(huán)把詩句打印3遍
      明日何其多,明日何其多。
      明日何其多,明日何其多。
      明日何其多,明日何其多。12345678910111213141516171819

      【練習題】

      1 循環(huán)打印

      • 問題:
        小美想要用今天學到的循環(huán)打印數(shù)字1-7,不過,她不喜歡4這個數(shù)字……

      分析:
      for …in…;while… 都可

      #代碼print('# while 循環(huán)')n = 0while n < 7:
         n = n+1
         if n != 4:  # 當num != 4,執(zhí)行打印語句;等于4時不打印。       print(n)print('# for 循環(huán)')for num in range(1,8):  # 為同時能運行兩個循環(huán),新取參數(shù) num。   if num != 4:  # 當num != 4,執(zhí)行打印語句;等于4時不打印。       print(num)12345678910111213
       #輸出顯示:
       
      # while 循環(huán)123567# for 循環(huán)12356712345678910111213141516

      3 用數(shù)據做判斷

      • 計算機的邏輯判斷,只有兩種:True(“真”)和False(“假”),叫做【布爾運算】。

      while循環(huán)要執(zhí)行,while后的條件必須為“真”!!
      ①while 條件判斷: 先判斷,若條件為真,順利執(zhí)行直到條件更為假;若條件恒為假不執(zhí)行,恒為真一直執(zhí)行。
      ②while False:不執(zhí)行;while True: 一直執(zhí)行
      san

      4 四個新語句

      • 1) break 語句
        break是“打破”,用來跳出并結束循環(huán),一般寫作if…break
        (如果滿足了某一個條件,就提前結束循環(huán)。)只能在循環(huán)內部使用。寫法為:

      # break語句搭配for循環(huán)for...in...:
         ...
         if ...:
             break
             #break語句搭配while循環(huán)while...(條件):
         ...
         if ...:
             break1234567891011

      if前縮進4空格,break前縮進8空格

      #例子:while True:
         print('上供一對童男童女')
         t = input('孫悟空來了么?')
         if t == '來了':
             breakprint('齊天大圣來也,制服了鯉魚精,陳家莊再也不用上供童男童女了')1234567
      #輸出顯示:
      
      上供一對童男童女
      孫悟空來了么?k
      上供一對童男童女
      孫悟空來了么?來了
      齊天大圣來也,制服了鯉魚精,陳家莊再也不用上供童男童女了1234567
      • 2)continue語句

      • continue是“繼續(xù)”,當某個條件被滿足的時候,觸發(fā)continue語句,將跳過之后的代碼,直接回到循環(huán)的開始。只能在循環(huán)內部使用。一般寫法為:

       # continue語句搭配for循環(huán)for...in...:
         ...
         if ...:
             continue
         ...#continue語句搭配while循環(huán)while...(條件):
         ...
         if ...:
             continue
         ...123456789101112
      • 綜合使用continue,break例子:夢姑與虛竹:只有連續(xù)答對三個問題,才能判定他就是西夏公主的意中人;否則,只要有任何一題錯,都要換人從第一題開始重新回答問題。(正確答案:黑暗的冰窖-夢姑-未看清楚)

      print('夢姑西夏選駙馬的故事:只有連續(xù)答對三個問題,才能判定他就是西夏公主的意中人;否則,只要有任何一題錯,都要換人從頭開始回答問題。')while True:
          q1 = input('第一問:你一生之中,在什么地方最是快樂逍遙?')
          if q1!='黑暗的冰窖':
              continue #直接回到while
          print('答對第一問,下面是第二問:')
          q2 = input('第二問:你生平最愛之人,叫什么名字?')
          if q2!='夢姑':
              continue #直接回到while
          print('答對第二問,還有最后一問:')
          q3 = input('第三問:你最愛的這個人相貌如何?')
          if q3 == '未看清楚':
              breakprint('都答對了,你是虛竹,正是我要挑選的駙馬。')1234567891011121314
      #輸出顯示:
      
      夢姑西夏選駙馬的故事:只有連續(xù)答對三個問題,才能判定他就是西夏公主的意中人;否則,只要有任何一題錯,都要換人從頭開始回答問題。
      第一問:你一生之中,在什么地方最是快樂逍遙?家里
      第一問:你一生之中,在什么地方最是快樂逍遙?黑暗的冰窖
      答對第一問,下面是第二問:第二問:你生平最愛之人,叫什么名字?莫莫
      第一問:你一生之中,在什么地方最是快樂逍遙?黑暗的冰窖
      答對第一問,下面是第二問:第二問:你生平最愛之人,叫什么名字?夢姑
      答對第二問,還有最后一問:第三問:你最愛的這個人相貌如何?美麗動人
      第一問:你一生之中,在什么地方最是快樂逍遙?黑暗的冰窖
      答對第一問,下面是第二問:第二問:你生平最愛之人,叫什么名字?夢姑
      答對第二問,還有最后一問:第三問:你最愛的這個人相貌如何?未看清楚
      都答對了,你是虛竹,正是我要挑選的駙馬。123456789101112131415161718
      • 3)pass語句

      • pass是“跳過”,占據一個位置表示“滿足條件時,什么都不做”,避免代碼報錯。

      a = int(input('請輸入一個整數(shù):'))if a >= 100:
          passelse:
          print('你輸入了一個小于100的數(shù)字')12345
      #輸出顯示:
      
      請輸入一個整數(shù):20你輸入了一個小于100的數(shù)字
      Process finished with exit code 0請輸入一個整數(shù):200Process finished with exit code 012345678
      • 4)else語句

      • else是“否則”,在條件判斷語句見過【if …else…】,其實,else還能跟for循環(huán)和while循環(huán)配合使用。 用在循環(huán)語句后,如果沒遇到break,正常結束循環(huán)就執(zhí)行else。

      for i in range(5):
          a = int(input('請輸入0結束循環(huán),你有5次機會:'))
          if a == 0:
              print('你觸發(fā)了break語句,導致else語句不會生效。')    
              breakelse:
          print('5次循環(huán)你都錯過了,else語句生效了。')1234567
      # 把之前這段for循環(huán)的代碼改成while循環(huán),要求運行效果相同
      i=0while i<5:
          i=i+1
          a = int(input('請輸入0結束循環(huán),你有5次機會:'))
          if a == 0:
              print('你觸發(fā)了break語句,導致else語句不會生效。')    
              breakelse:
          print('5次循環(huán)你都錯過了,else語句生效了。')12345678910
      #輸出顯示:
      
      請輸入0結束循環(huán),你有5次機會:1請輸入0結束循環(huán),你有5次機會:1請輸入0結束循環(huán),你有5次機會:1請輸入0結束循環(huán),你有5次機會:2請輸入0結束循環(huán),你有5次機會:35次機會你都錯過了,else語句生效了。
      # 把之前這段for循環(huán)的代碼改成while循環(huán),運行效果相同
      請輸入0結束循環(huán),你有5次機會:1請輸入0結束循環(huán),你有5次機會:1請輸入0結束循環(huán),你有5次機會:1請輸入0結束循環(huán),你有5次機會:2請輸入0結束循環(huán),你有5次機會:35次機會你都錯過了,else語句生效了。123456789101112131415

      break,continue必須與if語句連用,pass常在if下。

      ‘:循環(huán)游戲:猜大小游戲編程:’

      • 一個小游戲:一個人在心里想好一個數(shù),比如24,然后讓另一個人猜。如果他猜的數(shù)比24小,告訴他“太小了”,如果他猜的數(shù)比24大,告訴他“太大了”。不確定猜多少次,直到猜對為止,輸出恭喜你猜對了。

      print('猜數(shù)字大小游戲開始:')a=24while True:
          answer =int(input('你來猜我想的數(shù)字是什么?'))
          if answer<a:
              print('猜小了,再猜')
          if answer>a:
              print('猜大了,再猜')
          if answer ==a:
              print('恭喜你猜對了')
              break123456789101112
      #輸出顯示:
      
      猜數(shù)字大小游戲開始:你來猜我想的數(shù)字是什么?1猜小了,再猜
      你來猜我想的數(shù)字是什么?50猜大了,再猜
      你來猜我想的數(shù)字是什么?25猜大了,再猜
      你來猜我想的數(shù)字是什么?23猜小了,再猜
      你來猜我想的數(shù)字是什么?24恭喜你猜對了12345678910111213
      • 改一下題目:這個游戲只能猜3次,3次都猜不中,就告訴他“失敗了”。

      print('猜數(shù)字大小游戲開始,你來猜我想的數(shù)字是什么?')a=24for i in range(1,4):
          print('這是第' + str(i) + '次猜喲!')
          answer =int(input('輸入數(shù)字:'))
          if answer==a:
              print('恭喜你猜對了呢!')
              break
          elif answer>a:
              print('猜大了,再猜')
          elif answer<a:
              print('猜小了,再猜')else:
          print('你已經猜錯三次了,失敗了,正確答案是'+str(a))1234567891011121314
      #輸出顯示:
      
      猜數(shù)字大小游戲開始,你來猜我想的數(shù)字是什么?
      這是第1次猜喲!
      輸入數(shù)字:1猜小了,再猜
      這是第2次猜喲!
      輸入數(shù)字:3猜小了,再猜
      這是第3次猜喲!
      輸入數(shù)字:23猜小了,再猜
      你已經猜錯三次了,失敗了,正確答案是2412345678910111213

      【練習題】

      1 囚徒困境

      • 問題:
        假設有兩名囚徒A和B因為合伙犯罪被抓捕,因沒有確鑿可以指認罪行的證據,審判者準備單獨審判兩位囚徒。若兩人都認罪,則兩人各判10年;若一個認罪一個抵賴,則認罪的人判1年,抵賴的人判20年;若兩人都抵賴,則各判3年。

      請寫個代碼:當兩人都抵賴時,打印判決,代碼結束;若為其他結果,則在打印判決后繼續(xù)循環(huán)。

        本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多