Python looping and program restart if true

后端 未结 3 1717
情歌与酒
情歌与酒 2021-01-27 08:57

Please help as I am a true beginner and would love to learn more. I am trying to learn more about looping so take a look at this code please.

# lets the user inp         


        
相关标签:
3条回答
  • 2021-01-27 09:35

    You could also make a variable called should_restart (or whatever you want to call it) and set it equal to True before the loop. Then set the loop to happen if should_restart is equal to True. Then you could say if the user inputs yes it continues but if the user answers no it sets should_restart equal to True

    # decides whether to keep looping or not
    should_restart = True
    while should_restart == True:
    
        # lets the user input first number
        num1 = float(raw_input("Enter your first number  ---> "))
    
        # lets the user input second number
        num2 = float(raw_input("Enter your second number  ---> "))
    
        #the next four lines sets the basic mathematical equations
        addAns = num1+num2
        subAns = num1-num2
        mulAns = num1*num2
        divAns = num1/num2
    
        # ask the user to let the program know what equation to run with an 
        option of running them all
        operator = raw_input("What operator would you like to use(+,-,*,/ or ALL)")
    
        #these if and else statements are based on the input by the user.         
        Depending on the operator chosen it will print that equation.
        if operator == "+":
            print "the result of:\t " ,num1, "+" ,num2, "=" ,addAns,
        elif operator == "-":
            print "\nthe result of:\t " ,num1, "-" ,num2, "=" ,subAns,
        elif operator == "*":
            print "\nthe result of:\t " ,num1, "*" ,num2, "=" ,mulAns,
        elif operator == "/":
            print "\nthe result of:\t " ,num1, "/" ,num2, "=" ,divAns,
        elif operator == "ALL" or "all" or "All":
            print "the result of:\t " ,num1, "+" ,num2, "=" ,addAns,
            print "\nthe result of:\t " ,num1, "-" ,num2, "=" ,subAns,
            print "\nthe result of:\t " ,num1, "*" ,num2, "=" ,mulAns,
            print "\nthe result of:\t " ,num1, "/" ,num2, "=" ,divAns,
        answer = raw_input("Would you like to try again?(yes or no)")
        if answer == 'yes' or 'Yes':
            continue
        elif answer == 'no' or 'No':
            should_restart = False
    
    0 讨论(0)
  • 2021-01-27 09:47

    you can try defining a function calc or what ever u want and write the whole code in that function and u can directly call that function whenever u need

    def calc():
     your code
    
    if answer == 'yes' or 'Yes':calc()
    elif answer == 'no' or 'No':print "Thanks for using my calculator
    
    0 讨论(0)
  • 2021-01-27 09:50

    UPDATED: You have to use a while loop like this:

    while True:
        # lets the user input first number
        num1 = float(raw_input("Enter your first number  ---> "))
    
        # lets the user input second number
        num2 = float(raw_input("Enter your second number  ---> "))
    
        #the next four lines sets the basic mathematical equations
        addAns = num1+num2
        subAns = num1-num2
        mulAns = num1*num2
        divAns = num1/num2
    
        # ask the user to let the program know what equation to run with an 
        #option of running them all
        operator = raw_input("What operator would you like to use(+,-,*,/ or ALL)")
    
        #these if and else statements are based on the input by the user.         
        #Depending on the operator chosen it will print that equation.
        if operator == "+":
            print "the result of:\t " ,num1, "+" ,num2, "=" ,addAns,
        elif operator == "-":
            print "\nthe result of:\t " ,num1, "-" ,num2, "=" ,subAns,
        elif operator == "*":
            print "\nthe result of:\t " ,num1, "*" ,num2, "=" ,mulAns,
        elif operator == "/":
            print "\nthe result of:\t " ,num1, "/" ,num2, "=" ,divAns,
        elif operator == "ALL" or "all" or "All":
            print "the result of:\t " ,num1, "+" ,num2, "=" ,addAns,
            print "\nthe result of:\t " ,num1, "-" ,num2, "=" ,subAns,
            print "\nthe result of:\t " ,num1, "*" ,num2, "=" ,mulAns,
            print "\nthe result of:\t " ,num1, "/" ,num2, "=" ,divAns,
    
        answer = raw_input("Would you like to try again?(yes or no)")
        if answer == 'no': break
    print  "Thanks for using my calculator!!!"
    
    0 讨论(0)
提交回复
热议问题