python實現(xiàn)簡單猜單詞游戲
本文實例為大家分享了python實現(xiàn)猜單詞游戲的具體代碼,供大家參考,具體內(nèi)容如下
電腦根據(jù)單詞列表隨機生成一個單詞,打印出這個單詞長度個 ‘ _ ' ,玩家隨機輸入一個這個單詞可能包含的英文字母,如果玩家猜對了,電腦則會在正確的空格處填寫這個字母,如果沒有猜對,游戲次數(shù)就減一。如果玩家在游戲次數(shù)減為零前猜對這個單詞的所有字母,則玩家獲勝,否則玩家輸?shù)舯荣悺?/p>
from random import* words = 'tiger lion wolf elephant zebra ducksheep rabbit mouse'.split() #得到要猜的神秘單詞 def getWord(wordList): n = randint(0,len(wordList)-1) return wordList[n] #游戲界面 def display(word,wrongLetters,rightLetters,chance): print('你還有{:n}次機會'.format(chance).center(40,'-')) print('已經(jīng)猜錯的字母:'+ wrongLetters) print() blanks = '_'*len(word) for i in range(len(word)): if word[i] in rightLetters: blanks = blanks[:i] + word[i] +blanks[i+1:] for i in blanks: print(i+' ',end='') print() print() #從玩家的輸入得到一個猜測的字母 def getLetter(alreadyGuessed): while True: print('請輸入一個可能的字母:') guess = input() guess = guess.lower() if guess[0] in alreadyGuessed: print('你已經(jīng)猜過這個字母了!') elif guess[0] not in 'qwertyuiopasdfghjklzxcvbnm': print('請輸入一個英文字母!(a-z)') else: return guess[0] #是否再玩一次 def playAgain(): print('是否在玩一次?(y/n)') s = input() s = s.lower() if s[0] == 'y': return 1 return 0 #游戲初始化 wrongLetters = '' rightLetters = '' word = getWord(words) chance = 6 #初始為6次機會 done = False while True: display(word,wrongLetters,rightLetters,chance) guess = getLetter(wrongLetters+rightLetters) if guess in word: rightLetters = rightLetters+ guess foundAll = True for i in range(len(word)): if word[i] not in rightLetters: foundAll = False break if foundAll: print('你真棒,這個單詞就是'+ word +',你贏了!') done = True else: wrongLetters = wrongLetters + guess chance = chance - 1 if chance == 0: display(word,wrongLetters,rightLetters,chance) print("你已經(jīng)沒有機會了!你一共猜錯了"+str(len((wrongLetters))+"次,猜對了"+str(len(rightLetters))+"次,正確的單詞是:"+ word) done = True if done: if playAgain(): wrongLetters = '' rightletters = '' word = getWord(words) chance = 6 #初始為6次機會 done = 0 else: break
再為大家提供一段代碼:python猜單詞游戲,作為補充,感謝原作者的分享。
import random WORDS = ("math","english","china","history") right = 'Y' print("歡迎參加猜單詞游戲!") while right=='Y' or right=='y': word=random.choice(WORDS) correct=word newword = '' while word: pos=random.randrange(len(word)) newword+=word[pos] #將word單詞下標為pos的字母去掉,取pos前面和后面的字母組成新的word word = word[:pos]+word[(pos+1):] #保證隨機字母出現(xiàn)不會重復 print("你要猜測的單詞為:",newword) guess = input("請輸入你的答案:") count=1 while count<5: if guess!=correct: guess = input("輸入的單詞錯誤,請重新輸入:") count+=1 else : print("輸入的單詞正確,正確單詞為:",correct) break if count == 5: print("您已猜錯5次,正確的單詞為:",correct) right = input("是否繼續(xù),Y/N:")
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python中urllib.unquote亂碼的原因與解決方法
這篇文章主要給大家介紹了python中urllib.unquote亂碼的原因與解決方法,文中介紹的非常詳細,對大家具有一定的參考價值,需要的朋友可以參考學習,下面跟著小編一起來學習學習吧。2017-04-04在GitHub Pages上使用Pelican搭建博客的教程
這篇文章主要介紹了在GitHub Pages上使用Pelican搭建博客的教程,Pelican是一個使用Python實現(xiàn)的開源博客系統(tǒng),需要的朋友可以參考下2015-04-04詳解解Django 多對多表關(guān)系的三種創(chuàng)建方式
本文主要介紹了詳解解Django 多對多表關(guān)系的三種創(chuàng)建方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-08-08Python3.6簡單操作Mysql數(shù)據(jù)庫
這篇文章主要為大家詳細介紹了Python3.6簡單操作Mysql數(shù)據(jù)庫,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09python讀取excel數(shù)據(jù)并且畫圖的實現(xiàn)示例
這篇文章主要介紹了python讀取excel數(shù)據(jù)并且畫圖的實現(xiàn)示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-02-02python3.7 openpyxl 在excel單元格中寫入數(shù)據(jù)實例
這篇文章主要介紹了python3.7 openpyxl 在excel單元格中寫入數(shù)據(jù)實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09