1

と言ってループを壊そうとしています

if deff <= int(total):
    break

ただし、入力が負であるか合計を超えているかに関係なく、ループは中断され、ループが中断されます

私が間違っていることのアドバイスはありますか?

PS 私は、プレーヤーが勝ったか負けたかを決定するための公式を新しくすることを知っています. 今、私はそこに行く前に最初のコードを理解しようとしています

プログラミングは初めてで、教師は役に立たなかった):


def intro():

    greeting()

    print('How much money do you want to start with?')

    print('Enter the starting amount of dollars.', end='')
    total = int(input())

    print('Your current total is '+ str(total)+'\n')
    while True:

        print('How much money do you want to bet (enter 0 to quit)?', end='');
    # Bett will be the amount of money that the player will play with

        bett = int(input())
        if bett > int(total):
            print('ERROR You don\'t have that much left')

        if bett < int(0):
            print('ERROR: Invalid bet amount\n')

        if bett <= int(total)
            break

# Function shows results of slot machine after handle being pulled
def random():
    import random

    num1 = random.randint(1, 5)
    num2 = random.randint(1, 5)
    num3 = random.randint(1, 5)

    print('/---+---+---\  ')
    print('|-'+ str (num1)+'-|-'+ str(num2) +'-|-'+ str (num3) +'-|')
    print('\---+---+---/  ')



intro()

4

3 に答える 3

2

一連の条件テストでelifandを使用する必要があります。else

    bett = int(input())
    if bett > total:
        print('ERROR You don\'t have that much left')

    elif bett < 0:
        print('ERROR: Invalid bet amount\n')

    else:
        break

そうすれば、複数のステートメントではなく、1 つのステートメントのみが実行されます。

注意:int()コンストラクターを常に使用する必要はありません。int

于 2013-02-21T23:41:01.287 に答える
0

このブロックでは:

    if bett <= int(total)
        break

構文エラーがあります。最初の行の末尾にコロンを追加します。

    if bett <= int(total):
        break
于 2013-02-21T23:38:40.297 に答える