Datehoer的博客
我本将心向明月,奈何明月照沟渠
Datehoer的博客

当前位置:主页 > 技术分享 > python 猜单词小游戏

python 猜单词小游戏

浏览: 作者:Datehoer 发布日期:2020-11-05 18:41:24 来源: 原创
import random
words = ['chicken', 'dog', 'cat', 'mouse', 'frog']
guessTimes = 14
guessedLetters = ""
def pickWord():
    return random.choice(words)

def play():
    word = pickWord()
    while True:
        guess = getGuess(word)
        if processGuess(guess, word):
            print('You Win')
            break
        if guessTimes == 0:
            print("You lose")
            break
def getGuess(word):
    printWordWithBlanks(word)
    print('剩余' + str(guessTimes))
    guess = input("请输入一个字母:")
    return guess
def processGuess(guess,word):
    global guessTimes
    global guessedLetters
    guessTimes = guessTimes - 1
    guessedLetters = guessedLetters + guess
    for letter in word:
        if guessedLetters.find(letter) == -1:

            return  False

    return True
def printWordWithBlanks(word):
    displayWord = ''
    for letter in word:
        if guessedLetters.find(letter) > -1:
            displayWord = displayWord + letter
        else:
            displayWord = displayWord + '-'
    print(displayWord)
play()
原理非常简单,一看就会,其实这串代码是我好早以前写的了,最近会运用了一些新的知识,下面讲解一下:
具体就是读取文件,然后替换掉哪个words,这样的话只需要修改words.txt就行,而不是每次修改都要修改代码
wenjian = open("words.txt", "r")
words = wenjian.read().splitlines()
wenjian.close()
open是读取这个文件(记得把他放到同一级目录下),r是只读模式
然后read是获取数据,splitlines是改为列表
close是关闭文件,如果一个文件只打开不关闭的话可能会出现不必要的问题。
try:
    wenjian = open("words.txt", "r")
    words = wenjian.read().splitlines()
    wenjian.close()
except IOError:
    print("文件words.txt并没有找到")
    exit()
进阶版:进行抓取错误,毕竟说不定哪天就会把words文件当作垃圾文件删除掉了,所以要抓取一下错误。


版权:本文由Datehoer原创,著作权归作者所有。商业转载请联系作者获得授权,非商业转载请保留以上作者信息和原文链接本文链接:https://zjzdmc.top/jsfx/34.html。

文章推荐

热门标签

返回顶部
下面为相关推荐
说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!