Python Forum

Full Version: I have two Same Code but One of them Doesnt Work
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello everyone.. I have a problem
I have two Same Code but One of them Doesnt Work

This is the one that doesnt work
balance=1000
## 1= BALANCE CHECK
## 2= deposit money
## 3= withdraw money
## q= exit
while True:
     operation= input("Choose Operation:")

    if (operation == "q"):
        print("signing out...")
        break
    elif (operation == "1"):
        print("current balance: ",balance)
    elif (operation == "2"):
        money = int(input("amount deposited: "))
        balance += money
        print("current balance: ",balance)

    elif (operation == "3"):
        money = int(input("the amount you want to withdraw: ")
        if (balance-money<0):
            print("You dont have enough money")
            continue
        balance -= money
    else:
        print("Invalid operation, (choose 1,2 or 3")
but this code is working even though both are same

balance=1000
## 1= BALANCE CHECK
## 2= deposit money
## 3= withdraw money
## q= exit
while True:
    operation = input("Choose Operation:")

    if (operation == "q"):
        print("signing out...")
        break
    elif (operation == "1"):
        print("current balance:  ", balance)
    elif (operation == "2"):
        money = int(input("amount deposited:"))
        balance += money
        print("current balance: ", balance)

    elif (operation == "3"):
        money = int(input("the amount you want to withdraw:"))
        if (balance - money < 0):
            print("You dont have enough money")
            continue
        balance -= money

    else:
        print("Invalid operation, (choose 1,2 or 3")
Please help me ...... Angry
I've been working for hours for this.
You're missing a closing parentheses on line 20.

Your traceback should have pointed you to the area with the bug. Take a look and see what it says before you fix it. Wink
As it is now, we have to guess what is not working. Can you describe how they perform differently? Does one have a syntax error (which you should include), or do they both run. If they both run, what are the inputs that show the difference?

Line 7 on the first one is has a different indentation from the later portions which prevents it from running. But I'm not sure if that's your real problem or just a typo from when you pasted it in.
There is also an indentation error in line 7.

This should not be a comment.
## 1= BALANCE CHECK
## 2= deposit money
## 3= withdraw money
## q= exit
It should be code.
balance=1000
while True:
    print("1= BALANCE CHECK\n2= deposit money\n3= withdraw money\nq= exit")
    operation= input("Choose Operation:")
 
    if (operation == "q"):
        print("signing out...")
        break
    elif (operation == "1"):
        print("current balance: ",balance)
    elif (operation == "2"):
        money = int(input("amount deposited: "))
        balance += money
        print("current balance: ",balance)
 
    elif (operation == "3"):
        money = int(input("the amount you want to withdraw: "))
        if (balance-money<0):
            print("You dont have enough money")
        else:
            balance -= money
            print("current balance: ",balance)
    else:
        print("Invalid operation")
Thanks all of you.
I tried to fix maybe 2 hours but I cant fix.
Maybe I need to rest :)
Thx again.
Python does a pretty good job pointing out errors. The one place it doesn't do so well is syntax errors, sometimes just saying there is a syntax error on line X. And if your problem is that the line above is missing a closing quote, parenthesis or bracket, Python reports where the problem was identified, not where it occurred.
(Jan-22-2021, 10:02 PM)deanhystad Wrote: [ -> ]Python does a pretty good job pointing out errors. The one place it doesn't do so well is syntax errors, sometimes just saying there is a syntax error on line X. And if your problem is that the line above is missing a closing quote, parenthesis or bracket, Python reports where the problem was identified, not where it occurred.

Yes, you're right. Python told me the error was "invalid syntax" and target for 21th line.
but 21th line looking good
if (balance - money < 0):
I think I didn't see parentheses for this reason in 20th line
I hope you're understand me, my english not too good :)
Thanks