国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python實(shí)現(xiàn)簡(jiǎn)單猜數(shù)字游戲

瀏覽:36日期:2022-06-28 14:23:47

本文實(shí)例為大家分享了Python實(shí)現(xiàn)簡(jiǎn)單猜數(shù)字游戲的具體代碼,供大家參考,具體內(nèi)容如下

一、需求分析

編寫一個(gè)猜數(shù)字游戲,游戲規(guī)則:計(jì)算機(jī)給出一個(gè)1-20的之間的隨機(jī)數(shù)字,讓玩家來(lái)猜猜它是幾,計(jì)算機(jī)會(huì)告訴你每次猜出的數(shù)字或大或小,如在6次內(nèi)猜到正確數(shù)字,即贏了。

二、編寫思路

1.首先導(dǎo)入random隨機(jī)模塊 ,然后定義隨機(jī)數(shù)的范圍,然后定義次數(shù)。

2.使用while循環(huán)來(lái)判斷是否符合隨機(jī)數(shù)和輸入數(shù)值的比較,并且設(shè)置次數(shù)遞減

3.使用 isdigit 函數(shù)來(lái)完成判斷玩家數(shù)據(jù)類型,避免報(bào)錯(cuò)。

4.使用if else 流程控制語(yǔ)句即玩家輸入數(shù)字比隨機(jī)數(shù)大則提醒玩家數(shù)字大,反之則小并且提醒玩家剩余幾次機(jī)會(huì)。

5.最后編寫輸入機(jī)會(huì)用完猜對(duì)則游戲結(jié)束,猜錯(cuò)則提醒機(jī)會(huì)用完,并且公布電腦給出的隨機(jī)數(shù)答案。

三、問(wèn)題

1.如何來(lái)判斷玩家輸入的數(shù)據(jù)類型來(lái)避免報(bào)錯(cuò)?

解決:使用isdigit函數(shù)來(lái)判斷玩家輸入的數(shù)據(jù)類型是否為數(shù)字,是則繼續(xù)運(yùn)行反之則提醒玩家輸入的內(nèi)容不合法。

2.如何限制玩家輸入字符的數(shù)量?

解決:定義一個(gè)最大常量和最小常量,超出最大常量或者最小常量則會(huì)提醒玩家輸入內(nèi)容的范圍。

四、代碼

import random # 導(dǎo)入隨機(jī)模塊times = 6 # 定義嘗試次數(shù)game = random.randint(0, 20) # 定義隨機(jī)數(shù)范圍max = 20 # 定義最大常量min = 0 # 定義最小常量print(’猜一猜我心目中的數(shù)字(0-20之間):’)print(’你有%d次機(jī)會(huì):’ % times)while times > 0: # 循環(huán)判斷如果有機(jī)會(huì)往下運(yùn)行 times = times - 1 # 次數(shù)遞減 str = input() # 輸入數(shù)值 if not str.isdigit(): # 判斷數(shù)據(jù)類型 輸入的是不是數(shù)字 print(’您輸入的數(shù)據(jù):’ + str + ’不合法,請(qǐng)重新輸入我心目中的數(shù)字(0-20)之間,還有%d次機(jī)會(huì)’ % times) else: guess = int(str) if guess == game: #玩家輸入與隨機(jī)數(shù)相同 print(’猜對(duì)了!’) else: if guess > max: #玩家輸入大于猜測(cè)隨機(jī)數(shù)范圍 print(’輸入無(wú)效!請(qǐng)輸入%d到%d之間的數(shù)字,還有%d次機(jī)會(huì).’ % (min, max, times)) continue if guess > game: #玩家輸入大于隨機(jī)數(shù) print(’您輸入的數(shù)字大了!還有%d次機(jī)會(huì)’ % times) else: print(’您輸入的數(shù)字小了!還有%d次機(jī)會(huì)’ % times) if times > 0: #還有次數(shù) print(’在嘗試一次吧’) else: print(’沒(méi)機(jī)會(huì)了’) print(’我心目中的數(shù)字是%d’ % game)print(’游戲結(jié)束!’)

五、感悟

通過(guò)本次的項(xiàng)目練習(xí),我感覺自己收獲還是很大的,不僅考驗(yàn)了自己對(duì)基礎(chǔ)知識(shí)的掌握程度,而且和同學(xué)在討論中也發(fā)現(xiàn)了更多的問(wèn)題并且學(xué)會(huì)解決問(wèn)題,然后在師父的驗(yàn)收過(guò)程中也發(fā)現(xiàn)了代碼可以調(diào)優(yōu)完善的地方,最后在紀(jì)老師驗(yàn)收的過(guò)程中,通過(guò)看其他同學(xué)的代碼和自己的代碼來(lái)對(duì)比可以發(fā)現(xiàn)一些自己所不了解的知識(shí)及語(yǔ)法,老師也提了很多的問(wèn)題,并且提供了更多的思路,例如代碼里曲線 背景快出現(xiàn)的原因,以及如何設(shè)計(jì)游戲更多的樂(lè)趣,然后以后完成項(xiàng)目還可以使用PPT,因?yàn)檫@樣可以更清楚更便于自己或者同學(xué)來(lái)理解,使我受益匪淺,在自己解決問(wèn)題的過(guò)程中也學(xué)會(huì)了一些更多的函數(shù)用法,例如如何判斷數(shù)據(jù)類型,通過(guò)在網(wǎng)上搜索學(xué)習(xí)了這個(gè)函數(shù),我也對(duì)類似的這種函數(shù)進(jìn)行了解:

s為字符串

s.isalnum() 所有字符都是數(shù)字或者字母,為真返回 Ture,否則返回 False。

s.isalpha() 所有字符都是字母,為真返回 Ture,否則返回 False。

s.isdigit() 所有字符都是數(shù)字,為真返回 Ture,否則返回 False。

s.islower() 所有字符都是小寫,為真返回 Ture,否則返回 False。

s.isupper() 所有字符都是大寫,為真返回 Ture,否則返回 False。

s.istitle() 所有單詞都是首字母大寫,為真返回 Ture,否則返回 False。

s.isspace() 所有字符都是空白字符,為真返回 Ture,否則返回 False。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 桃源县| 山东| 双江| 永靖县| 弥勒县| 贵德县| 桐乡市| 瑞金市| 太仆寺旗| 阿坝县| 峨山| 临武县| 邓州市| 漠河县| 敖汉旗| 凤庆县| 兴宁市| 历史| 五家渠市| 惠东县| 万山特区| 台南市| 陇川县| 子长县| 神池县| 营口市| 凌源市| 拜泉县| 罗源县| 惠水县| 南康市| 聊城市| 出国| 靖西县| 南部县| 巍山| 兴安盟| 望城县| 乐至县| 祁门县| 巴林右旗|