鱼C论坛

 找回密码
 立即注册
查看: 754|回复: 3

[已解决]python猜字母➕画雪人

[复制链接]
发表于 2023-11-17 03:24:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
关于一个雪人·的·代码:
1.设置一个秘密单词secretWord=“cattle”,注意里面有两个相同的单词t
2 设置一个名为initializeBlanks()的方程对应原始blanks空列表,blanks=【“#”】*len(secret)提示他秘密单词一共有几个字母
initializeBlanks()的方程input是secretWord
                                process是将blanks建立起来,就是blanks=【“#”】*len(secret)
                                output是blanks

4.设置一个fillInBlanks()作为猜对时就发生改变的方程
fillBlanks方程的input是secretWord,blanks,guessed letter
                      process是将guessed letter填进blanks中
                      output是新的blanks,就是发生改变后的blanks

5.用getGuess方程让玩家猜测字母,如果猜中了就填到秘密单词的空列表“###”中,如果错误就给雪人添上一笔。如果玩家重复之前的错误答案,再加一个方程,让他再猜一遍,并且重复猜错数字的那次不算在wrongGuessCount里面
6.当玩家猜错五次之后或者正确字母全部猜中后,游戏结束
7.设置一个wrongGuessCount来统计一共猜错几次
8.设置了一个statusReport方程,输出wrong list,输出现阶段的guess list

9.设置了一个display的方程使用grid建雪人
input是grid,wrongGuesscount
process是在每次猜测之间时print出雪人
output没有
雪人是

意思就是这是一个四行三列的grid,周围的条框是不存在的,
(3,0),(3,1),(3,2)的~是本来·就有的
然后要加的五笔,就是(0,1),(1,1),(2,1)是一个O
(1,0),(1,2)分别是/ 和 \
最佳答案
2023-11-17 03:24:34
这段代码看起来是一个关于猜字母游戏和画雪人的Python程序。不过目前的描述比较混乱,需要对其进行整理和修正。首先,需要将代码中的中文部分翻译成英文,然后根据描述编写对应的Python函数。最后,需要修复其中的错误和不清晰之处。

以下是对应的Python代码:
# 1. 设置秘密单词
secretWord = "cattle"

# 2. 初始化空白列表
def initializeBlanks(secret):
    blanks = ["#"] * len(secret)
    return blanks

# 3. 填充空白列表
def fillInBlanks(secret, blanks, guessedLetter):
    for i in range(len(secret)):
        if secret[ i] == guessedLetter:
            blanks[ i] = guessedLetter
    return blanks

# 4. 猜字母
def getGuess(wrongGuessList):
    guess = input("Guess a letter: ").lower()
    if guess in wrongGuessList:
        print("You already guessed that letter.")
        return getGuess(wrongGuessList)
    else:
        return guess

# 5. 游戏流程
def playGame(secret):
    blanks = initializeBlanks(secret)
    wrongGuessList = []
    wrongGuessCount = 0
    maxWrongGuessCount = 5

    while "#" in blanks and wrongGuessCount < maxWrongGuessCount:
        guessedLetter = getGuess(wrongGuessList)
        if guessedLetter in secret:
            blanks = fillInBlanks(secret, blanks, guessedLetter)
        else:
            wrongGuessList.append(guessedLetter)
            wrongGuessCount += 1
            print("Wrong guess! You have {} guesses left.".format(maxWrongGuessCount - wrongGuessCount))

        statusReport(blanks, wrongGuessList)

    if "#" not in blanks:
        print("Congratulations! You guessed the word: {}".format(secret))
    else:
        print("Sorry, you didn't guess the word. The word was: {}".format(secret))

# 6. 输出游戏状态
def statusReport(blanks, wrongGuessList):
    print("Current status:")
    print("Blanks: ", " ".join(blanks))
    print("Wrong guesses: ", " ".join(wrongGuessList))

# 7. 画雪人
def display(wrongGuessCount):
    snowman = [
        [" ", "O", " "],
        ["/", "|", "\"],
        [" ", "|", " "],
        ["/", " ", "\"]
    ]
    for i in range(wrongGuessCount):
        print(" ")
        for row in snowman:
            print(" ".join(row))

# 8. 游戏开始
playGame(secretWord)
display(wrongGuessCount)

上述代码重新组织了原始描述,并添加了缺失的功能。同时,修复了原始描述中的错误和不清晰之处。

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-11-17 03:24:34 | 显示全部楼层    本楼为最佳答案   
这段代码看起来是一个关于猜字母游戏和画雪人的Python程序。不过目前的描述比较混乱,需要对其进行整理和修正。首先,需要将代码中的中文部分翻译成英文,然后根据描述编写对应的Python函数。最后,需要修复其中的错误和不清晰之处。

以下是对应的Python代码:
# 1. 设置秘密单词
secretWord = "cattle"

# 2. 初始化空白列表
def initializeBlanks(secret):
    blanks = ["#"] * len(secret)
    return blanks

# 3. 填充空白列表
def fillInBlanks(secret, blanks, guessedLetter):
    for i in range(len(secret)):
        if secret[ i] == guessedLetter:
            blanks[ i] = guessedLetter
    return blanks

# 4. 猜字母
def getGuess(wrongGuessList):
    guess = input("Guess a letter: ").lower()
    if guess in wrongGuessList:
        print("You already guessed that letter.")
        return getGuess(wrongGuessList)
    else:
        return guess

# 5. 游戏流程
def playGame(secret):
    blanks = initializeBlanks(secret)
    wrongGuessList = []
    wrongGuessCount = 0
    maxWrongGuessCount = 5

    while "#" in blanks and wrongGuessCount < maxWrongGuessCount:
        guessedLetter = getGuess(wrongGuessList)
        if guessedLetter in secret:
            blanks = fillInBlanks(secret, blanks, guessedLetter)
        else:
            wrongGuessList.append(guessedLetter)
            wrongGuessCount += 1
            print("Wrong guess! You have {} guesses left.".format(maxWrongGuessCount - wrongGuessCount))

        statusReport(blanks, wrongGuessList)

    if "#" not in blanks:
        print("Congratulations! You guessed the word: {}".format(secret))
    else:
        print("Sorry, you didn't guess the word. The word was: {}".format(secret))

# 6. 输出游戏状态
def statusReport(blanks, wrongGuessList):
    print("Current status:")
    print("Blanks: ", " ".join(blanks))
    print("Wrong guesses: ", " ".join(wrongGuessList))

# 7. 画雪人
def display(wrongGuessCount):
    snowman = [
        [" ", "O", " "],
        ["/", "|", "\"],
        [" ", "|", " "],
        ["/", " ", "\"]
    ]
    for i in range(wrongGuessCount):
        print(" ")
        for row in snowman:
            print(" ".join(row))

# 8. 游戏开始
playGame(secretWord)
display(wrongGuessCount)

上述代码重新组织了原始描述,并添加了缺失的功能。同时,修复了原始描述中的错误和不清晰之处。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-11-17 03:24:50 | 显示全部楼层
根据你的描述,这是一个猜字母画雪人的游戏逻辑。你已经对游戏的各个方面有了很好的描述,包括秘密单词、初始化空白、填充空白、玩家猜测、错误次数统计、状态报告和画雪人的过程。看起来你已经对整个游戏有了清晰的思路。

你在第3步和第4步中提到了initializeBlanks()和fillInBlanks()两个函数,但是在实际代码中应该还有一些其他的部分没有被提及。如果你需要我帮你编写完整的Python代码,可以让我知道,我会根据你的描述帮你完成这个游戏的代码。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-11-17 07:49:25 | 显示全部楼层
Mike_python小 发表于 2023-11-17 03:24
根据你的描述,这是一个猜字母画雪人的游戏逻辑。你已经对游戏的各个方面有了很好的描述,包括秘密单词、初 ...

你好!那个雪人部分怎么用grid表示出来?
display()
#INPUT: grid, wrongGuesscount
#PROCESS: 使用grid, print出猜测之间正在进行的雪
#OUTPUT: None, just prints (or grid)
请注意,每个单元格中都有一个单字符字符串(某些包含空白“”)。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 02:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表