0

def ステートメントに問題があります。私はそれらを本当に理解しているようには見えません。カジノのスロット マシンに似たクラスのコードを作成する必要があります。私はそれを行うコードを持っていますが、必要な def ステートメントではありません。グローバル変数も使えません。誰かが私を正しい方向に向けることができますか?

import random

money=''

b1=''

def greeting():

        print("Project 2")

def myMoney(money=0): 

    money=int(input("Let's play the slots!\nHow much money do you want to start with?\nEnter the starting number of dollars."))
    return money
    while True:
        if money>0:
            break
        if money==0:
            break


def getBet(bet=''):

        b1=int(input("How much do you want to bet?"))
        while True:
            if bet==0:
                break
            while True:
                if bet>money:
                    print("ERROR: You don't have that much left.")
                    print()
                    b1=int(input("How much do you want to bet?"))
                if bet<money:
                    input("Press enter to pull the slot machine handle!")
                    break
        return money
        return bet

    num1=random.randint(1, 5)
    num2=random.randint(1, 5)
    num3=random.randint(1, 5)
    print("/---+---+---\ ")
    print("|-"+str(num1)+"-|-"+str(num2)+"-|-"+str(num3)+"-|")
    print("\---+---+---/")

greeting()

myMoney()

getBet()
4

1 に答える 1

0

「def ステートメント」(関数) 内で、必要に応じて変数を定義できます。それらはグローバルではありません

def A_function():
    money = 0
    #do all sorts of things

基本的には次と同等です:

money=''
def Another_function(money=0):
    #do all sorts of things

それはあなたが持っているものです。最初の関数で、関数で変数「お金」を定義する方法を参照してください。2 つ目では、変数を必要なものに再定義します。最終的な結果は同じですが、すべての変数を追跡するのに役立ち、変数をグローバルに定義しないため、最初の選択肢が優先されます。コードでは、各関数にある入力ステートメントから既に値を取得しているため、先頭に 'b1' と 'money' を定義する必要はありません。

于 2013-02-21T20:36:31.897 に答える