Мое уравнение, кажется, не работает, но выглядит правильно - PullRequest
0 голосов
/ 19 октября 2018

Я - любитель программирования на Python, я пытаюсь сделать игру на удвоение или на ничто, в основном, вы ставите определенную сумму денег, у вас есть шанс получить вдвое больше или потерять то, что вы положили.

Кажется, что когда я запускаю этот скрипт, я делаю ставку, и ничего не происходит, денежный ярлык не меняется, я не уверен, как отлаживать.

from appJar import gui
import random

# GUI Tab Name
win = gui('Double or Nothing')
# Starting Money

# Declares the odds
array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# declaring the random array choice.

random = int(random.choice(array))

# starting money amount.

money = 500

# This is the define for the 'Insert Bet' button.
def press(name):

    bet = int(win.getEntry('Bet'))

    if name == 'InsertBet':
        win.setLabel('outcome', int(random))
        outcomes = int(win.getLabel('outcome'))
# The formula used to deduct and add Winnings
# If random is a number larger than seven, i would like to deduct
        if random >= int(7) :
            money == (int(money) - bet) + (bet * 2)
            win.setLabel('showMon', '$' + str(int(money)))

        elif random <= int(6) :
            money == int(money) - bet
            win.setLabel('showMon', '$' + str(int(money)))


# To Display How much money you have.

win.addLabel('showMon', '$' + str(int(money)))
win.addLabel("Insert amount money")
win.addEmptyLabel('outcome')
win.addEntry('Bet')
win.addButton('Insert Bet', press)

# start the GUI
win.go()

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

Имя в вашем состоянии должно соответствовать имени, с которым вы инициализируете кнопку:

Изменить:

if name == 'InsertBet':

на:

if name == 'Insert Bet':
0 голосов
/ 19 октября 2018

Ваша проблема Одна из ваших проблем заключается в следующих двух строках:

money == (int(money) - bet) + (bet * 2)
...
money == int(money) - bet

Это проверка, равняется ли money (int(money) - bet) + (bet * 2)) и int(money) - bet соответственно.Используйте = для установки money в значение.

Другая проблема, на которую указывает ответ blhsing , заключается в том, что вы проверяете, вызывается ли кнопка "Insert Bet""InsertBet", который не является;поэтому вы вообще не используете код нажатия кнопки!

if name == 'InsertBet':

должно быть

if name == 'Insert Bet':

Первая ошибка почти всегда наоборот!Поздравляем с творческим подходом к вашим ошибкам.: -Р

...