为什么python会给变量添加比需要更多的内容?

2024-09-28 23:40:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个刽子手游戏,当我运行代码时,除了赢线,其他一切都正常。lengthr是当前猜测的单词中的字母数量,lengthlengthr需要匹配的实际数量。如果我有一个5个字母的单词长度会变成9左右,这就是我需要帮助的地方。你知道吗

    import turtle
    import random

    w1 = "battery"
    w2 = "report"
    w3 = "beach"
    w4 = "mayor"
    w5 = "score"
    w6 = "overeat"
    w7 = "load"
    w8 = "social"
    w9 = "honor"
    w10 = "risk"

    turns = 10
    guesses = ''
    err = 0

    gennum = random.randint(1, 10)

    if gennum == 1:
        usedw = w1
    elif gennum == 2:
        usedw = w2
    elif gennum == 3:
        usedw = w3
    elif gennum == 4:
        usedw = w4
    elif gennum == 5:
        usedw = w5
    elif gennum == 6:
        usedw = w6
    elif gennum == 7:
        usedw = w7
    elif gennum == 8:
        usedw = w8
    elif gennum == 9:
        usedw = w9
    elif gennum == 10:
        usedw = w10

    wn = turtle.Screen()
    draw = turtle.Turtle()

    length = len(usedw)
    lengthr = int(0)

    print("Welcome to hangman your word is", length, "letters long.")

    while turns > 0:
        guess = input("Choose a character: ")
        guesses += guess
        for char in usedw:
            if char in guesses:
                print (char,)
                lengthr += 1
        else:
            err += 1
            if err == 1:
                draw.goto(0,0)
                draw.down()
                draw.goto(200,0)
            elif err == 2:
                draw.up()
                draw.goto(0,0)
                draw.down()
                draw.goto(0,200)
            elif err == 3:
                draw.up()
                draw.goto(0,200)
                draw.down()
                draw.goto(100,200)
            elif err == 4:
                draw.up()
                draw.goto(100,200)
                draw.down()
                draw.goto(100,150)
            elif err == 5:
                draw.up()
                draw.goto(100,100)
                draw.down()
                draw.circle(25)
            elif err == 6:
                draw.up()
                draw.goto(100,100)
                draw.down()
                draw.goto(100,50)
            elif err == 7:
                draw.up()
                draw.goto(75,90)
                draw.down()
                draw.goto(125,90)
            elif err == 8:
                draw.up()
                draw.goto(100,50)
                draw.down()
                draw.goto(75,35)
            elif err == 9:
                draw.up()
                draw.goto(100,50)
                draw.down()
                draw.goto(125,35)
                print("You loose.")
                break
            if lengthr == length:
                print ("You won!")     

Tags: iflengthdownerrprintdrawupturtle