Rückkehr Variablen in der Funktion

stimmen
0

Ich habe dieses Programm, ich möchte diese Funktionen nutzen für die Höhe, Breite und Länge zu stellen und sie als separate Variablen haben, damit ich sie verwenden kann in Schildkröte Grafiken zu zeichnen. Auch mit meiner getColor Funktion möchte ich das bin zurück und können Farben separat, damit ich sie in Schildkröte Grafiken anwenden. Ich bin ein bisschen verwirrt über Parameter; würden sie hier nützlich sein?

def main():

    print (The bin dimensions are: ,(getDim()))
    numofcans = getCans()
    print (You are recycling ,numofcans,cans.)
    print(Your bin color is ,getColor())


def getDim():

    height = int(input(Enter the bins height (40 to 60): ))
    width = int(input(Enter the bins width (40 to 60): ))
    length = int(input(Enter the bins length (40 to 60): ))
    while height and width and length not in range(40,61):
        print(You entered a wrong value)
        height = int(input(Enter the height (40 to 60: ))
        width = int(input(Enter the width(40 to 60: ))
        length = int(input(Enter the length (40 to 60: ))
    if height and width and length in range(40,61):
        return height, width, length

def getCans():

    cans = int(input(Enter the amount of cans (10,1000): ))
    if cans in range(10,1001):
        return cans
    while cans not in range(10,1001):
        cans = int(input(Invalid number, please enter the amount of cans (10,1000): ))
        return cans

def getColor():
    bincolor = int(input(Color menu \n 1 = 'blue' \n 2 = 'red' \n 3 = 'green' \n 4 = 'magenta' \nPick the bin color: ))
    while bincolor not in range(1,5):
        bincolor = int(input(Color menu \n 1 = 'blue' \n 2 = 'red' \n 3 = 'green' \n 4 = 'magenta' \nPick the bin color: ))
    while bincolor in range(1,5):
        if bincolor == 1:
            bincolor = blue
        elif bincolor == 2:
            bincolor = red
        elif bincolor == 3:
            bincolor = green
        elif bincolor == 4:
            bincolor = magenta


    cancolor = int(input(Color menu \n 1 = 'blue' \n 2 = 'red' \n 3 = 'green' \n 4 = 'magenta' \nPick the can color: ))
    while cancolor not in range(1,5):
        cancolor = int(input(Color menu \n 1 = 'blue' \n 2 = 'red' \n 3 = 'green' \n 4 = 'magenta' \nPick the can color: ))

    while cancolor in range(1,5):
        if cancolor == 1:
            cancolor = blue
        elif cancolor == 2:
            cancolor = red
        elif cancolor == 3:
            cancolor = green
        elif cancolor == 4:
            cancolor = magenta
        return bincolor, cancolor






main()

zurück verfolgen:

>>> 
Enter the bins height (40 to 60): 45
Enter the bins width (40 to 60): 46
Enter the bins length (40 to 60): 47
The bin dimensions are:  (45, 46, 47)
Enter the amount of cans (10,1000): 101
You are recycling  101 cans.
Color menu 
 1 = 'blue' 
 2 = 'red' 
 3 = 'green' 
 4 = 'magenta' 
Pick the bin color: 1
Color menu 
 1 = 'blue' 
 2 = 'red' 
 3 = 'green' 
 4 = 'magenta' 
Pick the can color: 3
Your bin color is  ('blue', 'green')
>>> 
Veröffentlicht am 27/10/2014 um 16:31
quelle vom benutzer
In anderen Sprachen...                            


2 antworten

stimmen
0

etwas wie

colors = getColor()

first = colors[0]
second = colors[1]

sollte es tun

hoffe ich keinen Python auf der Hand jetzt nicht verwechselt wurde.

Siehe auch: Wie Sie mehrere Werte in Python zurückgeben?

Beantwortet am 27/10/2014 um 16:46
quelle vom benutzer

stimmen
0

Sie Rückkehr bereits als Tupel, so können Sie einfach Ihre Funktionen aufrufen und sie in neue Variablen entpacken, anstatt sie auszudrucken:

def main():
    height, width, length = getDim()
    numofcans = getCans()
    bincolor, cancolor = getColor()
    # go on to do rest of program
    ...
Beantwortet am 27/10/2014 um 16:48
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more