<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          群友教你使用Python編程來實(shí)現(xiàn)“猜數(shù)字”游戲

          共 754字,需瀏覽 2分鐘

           ·

          2022-03-08 17:50

          點(diǎn)擊上方“Python爬蟲與數(shù)據(jù)挖掘”,進(jìn)行關(guān)注

          回復(fù)“書籍”即可獲贈(zèng)Python從入門到進(jìn)階共10本電子書

          誓掃匈奴不顧身,五千貂錦喪胡塵。

          大家好,我是Python進(jìn)階者。

          一、前言

          前幾天在Python鉆石交流群有個(gè)叫【dcpeng】的粉絲問了一個(gè)關(guān)于Python實(shí)現(xiàn)“猜數(shù)字”游戲的問題,這里拿出來給大家分享下,一起學(xué)習(xí)。

          大概意思是說隨機(jī)產(chǎn)生一個(gè)數(shù)字,然后你自己輸入一個(gè)數(shù)字,一直猜,直到猜對(duì)為止,退出循環(huán)。

          二、解決過程

          這里給出【馮誠(chéng)】和【德善堂小兒推拿-瑜亮老師】大佬的解答,一共兩個(gè)方法,一起來看看吧!

          【馮誠(chéng)】解答

          其實(shí)這個(gè)題目的邏輯和思路也相對(duì)簡(jiǎn)單,使用while循環(huán)和random庫,借用input()函數(shù),下面是【馮誠(chéng)】大佬給的代碼,如下所示:

          import?random
          n=random.randint(1,100)
          while?True:
          ????a=int(input('請(qǐng)輸入數(shù)字:'))
          ????if?a>n:
          ????????print('猜大了')
          ????elif?a????????print('猜小了')
          ????else?:
          ????????print('恭喜你猜對(duì)了')
          ????????break

          這個(gè)方法還是蠻好理解的,比較好理解,基本上運(yùn)氣好的話,幾次運(yùn)行結(jié)果,就會(huì)答對(duì)了?!綿cpeng】自己也寫了一份代碼,和這個(gè)基本上一樣的,就不單獨(dú)展示了。

          【德善堂小兒推拿-瑜亮老師】解答

          這里加入了重新賦值的方法,使得交互性更強(qiáng)了一些,代碼如下:

          #-*-coding:utf8;-*-
          #qpy:console

          import?random
          key=random.randint(1,100)
          btm=1
          top=100
          count=1
          while?True:
          ????try:
          ????????user=int(input("請(qǐng)輸入數(shù)字:"))
          ????except:
          ????????continue
          ????if?user>key:
          ????????print('猜大了')
          ????????print(f'數(shù)字區(qū)間為{btm}-{user}')
          ????????top=user
          ????elif?user????????print('猜小了')
          ????????print(f'數(shù)字區(qū)間為{user}-{top}')
          ????????btm=user
          ????else:
          ????????print(f'恭喜你共使用{count}次機(jī)會(huì),猜對(duì)正確數(shù)字{key}')
          ????????break
          ????count+=1

          這樣還能清楚的知道下一步的猜數(shù)是哪個(gè)具體的區(qū)間,確實(shí)好看很多。

          不過后來【月神】日常測(cè)試,皮了一下,發(fā)現(xiàn)了一個(gè)小問題,如下圖所示:

          不仔細(xì)測(cè)試的話,是很難發(fā)現(xiàn)這個(gè)小問題。

          后來【瑜亮老師】?jī)?yōu)化了他的這個(gè)代碼,最新的代碼如下所示:

          import?random

          key?=?random.randint(1,?100)
          btm?=?1
          top?=?100
          count?=?1
          while?True:
          ????try:
          ????????user?=?int(input("請(qǐng)輸入數(shù)字:"))
          ????except:
          ????????continue
          ????if?user?>?key:
          ????????if?top?>=?user:
          ????????????top?=?user
          ????????print(f'錯(cuò)誤!正確數(shù)字比{user}小,答案就在區(qū)間{btm}-{top}之中')
          ????elif?user?????????if?btm?<=?user:
          ????????????btm?=?user
          ????????print(f'錯(cuò)誤!正確數(shù)字比{user}大,答案在區(qū)間{btm}-{top}之中')
          ????else:
          ????????print(f'恭喜你共使用{count}次機(jī)會(huì),猜對(duì)正確數(shù)字{key}')
          ????????if?count?>?7:
          ????????????print('請(qǐng)繼續(xù)努力!您還需要多練習(xí)猜數(shù)。')
          ????????elif?count?==?1:
          ????????????print('啥也甭說了,快去買彩票!')
          ????????else:
          ????????????print('你真是個(gè)機(jī)靈的小可愛!')
          ????????break
          ????count?+=?1

          最新代碼修復(fù)了輸入錯(cuò)誤數(shù)字時(shí)提示區(qū)間顯示的錯(cuò)誤。加入一些互動(dòng),玩起來更有意思一些,這樣就更加完美了。

          真是太秀了。

          三、總結(jié)

          大家好,我是Python進(jìn)階者。這篇文章基于粉絲提問,針對(duì)Python實(shí)現(xiàn)猜數(shù)游戲的問題,給出了具體說明和演示,并且在實(shí)現(xiàn)過程中,群友們不斷的測(cè)試和優(yōu)化,精益求精,順利地幫助粉絲解決了問題,讓程序玩起來更有意思一些。

          最后感謝粉絲【dcpeng】提問,感謝【馮誠(chéng)】和【德善堂小兒推拿-瑜亮老師】大佬給出的示例和代碼支持,感謝粉絲【月神】、【馮誠(chéng)】、【Function】參與調(diào)測(cè)支持,感謝【孤煙逐云】、【東哥】、【某嘟】、【Function】、【布洛芬】、【果凍】等人參與學(xué)習(xí)交流。

          小伙伴們,快快用實(shí)踐一下吧!如果在學(xué)習(xí)過程中,有遇到任何問題,歡迎加我好友,我拉你進(jìn)Python學(xué)習(xí)交流群共同探討學(xué)習(xí)。

          -------------------?End?-------------------

          往期精彩文章推薦:

          歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持

          想加入Python學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群

          萬水千山總是情,點(diǎn)個(gè)【在看】行不行

          /今日留言主題/

          隨便說一兩句吧~

          瀏覽 143
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  另类视频在线观看 | 操逼影音 | 久久99精品久久久久久国产越南 | 成人毛片18女人免费看 | 亚洲A片在线观看 |