最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用python實(shí)現(xiàn)你說我猜游戲的完整實(shí)例

 更新時(shí)間:2022年05月05日 10:08:22   作者:他們叫我技術(shù)總監(jiān)  
這篇文章主要給大家介紹了關(guān)于如何利用python實(shí)現(xiàn)你說我猜游戲的相關(guān)資料,用到的都是一些簡單的基礎(chǔ)的python語句,適合剛?cè)腴T的小白,可以嘗試跟著一起敲一下,感受一下編程中的樂趣,需要的朋友可以參考下

前言

五一參加python技能書的答疑,發(fā)現(xiàn)題目中的邏輯存在問題,對應(yīng)的你說我猜游戲里面的都是恒相等的。就調(diào)試修正了對應(yīng)的代碼,分享給大家,供大家學(xué)習(xí)與娛樂。

一、游戲規(guī)則

請你使用類 KeyValueSet 完成一個(gè)交互式命令行你想我猜游戲。支持:

  • 裝載N個(gè)句子對
  • 你猜我想 闖關(guān),輸出上半句,等待用戶猜測下半句
  • 如果猜中就累加10分,否則扣2分
  • 全部結(jié)束輸出用戶本次得分

二、實(shí)現(xiàn)過程

1、基本框架

我們編寫一個(gè)新的class,內(nèi)部通過組合KeyValueSet來支持上述功能,程序框架如下:

# -*- coding: UTF-8 -*-
class GuessSentenceGame:
    def __init__(self):
        self.kv = KeyValueSet()
        self.score = 0
 
    def setup(self, sentences):
        # TODO(You): 請?jiān)诖司帉懷b載邏輯
    
    def guess(self, first_word):
        # TODO(You): 請?jiān)诖司帉懖聹y結(jié)果,返回 err, value
    
    def run(self):
        self.score = 0
        for first_word in self.kv.keys():
            ret = input("猜一猜下半句是什么? {} -> :".format(first_word))
            err, value = self.guess(first_word)
            if err==0:
                print('你太厲害了,這都能猜得到!+10分!')
                self.score += 10
            else:
                self.score -= 2
                print('哈哈,肯定猜不到得啦:{}->{},扣除2分!'.format(first_word, value))
        print('游戲結(jié)束,你本次游戲得分:', self.score)
 
if __name__ == '__main__':
 
    sentences = [
        "hello world",
        'monkey king',
        'tomorrow is another day',
        "good bye"
    ]
 
    game = GuessSentenceGame()
    game.setup(sentences)
    game.run()

一個(gè)示例輸出是:

猜一猜下半句是什么? hello -> :world
你太厲害了,這都能猜得到!+10分!
猜一猜下半句是什么? monkey -> :king
你太厲害了,這都能猜得到!+10分!
猜一猜下半句是什么? tomorrow -> :is another day
你太厲害了,這都能猜得到!+10分!
猜一猜下半句是什么? good -> :a
哈哈,肯定猜不到得啦:good->bye,扣除2分!
游戲結(jié)束,你本次游戲得分: 28

2、完整案例

 代碼:

# -*- coding: UTF-8 -*-
class KeyValueSet:
    def __init__(self) -> None:
        self.dict = {}
 
    def set(self, key, value):
        self.dict[key] = value
 
    def get(self, key):
        return self.dict.get(key)
 
    def keys(self):
        return self.dict.keys()
# -*- coding: UTF-8 -*-
class GuessSentenceGame:
    def __init__(self):
        self.kv = KeyValueSet()
        self.score = 0
#獲取按空格截取的上下句
    def setup(self, sentences):
        for sentence in sentences:
            cut_pos = sentence.find(' ')
            first_word, rest = sentence[0:cut_pos], sentence[cut_pos + 1:].strip()
            self.kv.set(first_word, rest)
#根據(jù)上句返回對應(yīng)的值,這是原邏輯返回了一個(gè)狀態(tài)碼和下句值,但邏輯存在問題,狀態(tài)碼是恒等于0的因此我們比較輸入值與返回默認(rèn)下句是否一致即可
    def guess(self, first_word):
        value = self.kv.get(first_word)#
        err = 0 if value else 1
        #print(err, value)
        return err, value
 
    def run(self):
        self.score = 0
        for first_word in self.kv.keys():
            ret = input("猜一猜下半句是什么? {} -> :".format(first_word))
            err, value = self.guess(first_word)
            if  value==ret:#比較輸入值與返回默認(rèn)下句是否一致即可
                print('你太厲害了,這都能猜得到!+10分!')
                self.score += 10
            else:
                self.score -= 2
                print('哈哈,肯定猜不到得啦:{}->{},扣除2分!'.format(first_word, value))
        print('游戲結(jié)束,你本次游戲得分:', self.score)
 
 
if __name__ == '__main__':
    sentences = [
        "他們叫我 技術(shù)總監(jiān)",
        'hello world',
        'monkey king',
        'tomorrow is another day',
        'good bye',
        "謝謝 大家"
 
    ]
 
    game = GuessSentenceGame()
    game.setup(sentences)
    game.run()

效果圖:

 三、總結(jié)

到此這篇關(guān)于利用python實(shí)現(xiàn)你說我猜游戲的文章就介紹到這了,更多相關(guān)python你說我猜游戲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 遞歸深度優(yōu)先搜索與廣度優(yōu)先搜索算法模擬實(shí)現(xiàn)

    python 遞歸深度優(yōu)先搜索與廣度優(yōu)先搜索算法模擬實(shí)現(xiàn)

    這篇文章主要介紹了python 遞歸深度優(yōu)先搜索與廣度優(yōu)先搜索算法模擬實(shí)現(xiàn) ,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-10-10
  • opencv 實(shí)現(xiàn)特定顏色線條提取與定位操作

    opencv 實(shí)現(xiàn)特定顏色線條提取與定位操作

    這篇文章主要介紹了opencv 實(shí)現(xiàn)特定顏色線條提取與定位操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • PyQt5連接MySQL及QMYSQL driver not loaded錯(cuò)誤解決

    PyQt5連接MySQL及QMYSQL driver not loaded錯(cuò)誤解決

    這篇文章主要介紹了PyQt5連接MySQL及QMYSQL driver not loaded錯(cuò)誤解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 詳解Python中的__new__()方法的使用

    詳解Python中的__new__()方法的使用

    本文主要介紹了Python中的__new__()方法的使用的基本知識(shí),本文中給出了基于Python2.x的代碼實(shí)例,需要的朋友可以參考一下
    2015-04-04
  • Python可視化工具Plotly的應(yīng)用教程

    Python可視化工具Plotly的應(yīng)用教程

    對于Python語言來說,比較傳統(tǒng)的數(shù)據(jù)可視化模塊是Matplotlib,但它存在不夠美觀、靜態(tài)性、不易分享等缺點(diǎn),限制了Python在數(shù)據(jù)可視化方面的發(fā)展。為了解決這個(gè)問題,新型的動(dòng)態(tài)可視化開源模塊Plotly應(yīng)運(yùn)而生。本文將為大家詳細(xì)介紹Plotly的用法,需要的可以參考一下
    2021-12-12
  • Python一行代碼實(shí)現(xiàn)自動(dòng)發(fā)郵件功能

    Python一行代碼實(shí)現(xiàn)自動(dòng)發(fā)郵件功能

    最近在自己學(xué)習(xí)Python爬蟲,學(xué)到了用Python發(fā)送郵件,覺得這個(gè)可能以后比較實(shí)用。所以這篇文章主要給大家介紹了如何通過Python一行代碼實(shí)現(xiàn)自動(dòng)發(fā)郵件功能的相關(guān)資料,需要的朋友可以參考下
    2021-05-05
  • 對Python使用mfcc的兩種方式詳解

    對Python使用mfcc的兩種方式詳解

    今天小編就為大家分享一篇對Python使用mfcc的兩種方式詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Selenium 配置啟動(dòng)項(xiàng)參數(shù)的方法

    Selenium 配置啟動(dòng)項(xiàng)參數(shù)的方法

    這篇文章主要介紹了Selenium 配置啟動(dòng)項(xiàng)參數(shù)的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Python實(shí)現(xiàn)全自動(dòng)安裝第三方庫的方法

    Python實(shí)現(xiàn)全自動(dòng)安裝第三方庫的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)全自動(dòng)安裝第三方庫的方法,一說Python要安裝哪個(gè)模塊,我們第一反應(yīng),win+r輸入cmd,pip?instll安裝,但是如果換電腦了,Python第三方庫那么多,難道要一次一次的敲擊pip?install,本文就介紹一個(gè)簡單的方法解放雙手,需要的朋友可以參考下
    2023-07-07
  • pytorch實(shí)現(xiàn)focal loss的兩種方式小結(jié)

    pytorch實(shí)現(xiàn)focal loss的兩種方式小結(jié)

    今天小編就為大家分享一篇pytorch實(shí)現(xiàn)focal loss的兩種方式小結(jié),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01

最新評論

陆河县| 三门峡市| 白河县| 通山县| 嘉荫县| 文化| 荔波县| 岳池县| 湘乡市| 汶上县| 西宁市| 绥宁县| 石林| 铜鼓县| 田阳县| 宜兰市| 鹿邑县| 临洮县| 东至县| 巴南区| 大连市| 巴马| 虎林市| 邯郸县| 彰武县| 虞城县| 红河县| 黄骅市| 漳平市| 中方县| 湖南省| 峨眉山市| 类乌齐县| 凤山市| 山东| 石门县| 长葛市| 楚雄市| 长治县| 和静县| 日照市|