Python Forum
I have two Same Code but One of them Doesnt Work - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/forum-7.html)
+--- Forum: General Coding Help (https://python-forum.io/forum-8.html)
+--- Thread: I have two Same Code but One of them Doesnt Work (/thread-32132.html)



I have two Same Code but One of them Doesnt Work - beginner721 - Jan-22-2021

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.


RE: I have two Same Code but One of them Doesnt Work - Marbelous - Jan-22-2021

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


RE: I have two Same Code but One of them Doesnt Work - bowlofred - Jan-22-2021

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.


RE: I have two Same Code but One of them Doesnt Work - deanhystad - Jan-22-2021

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")



RE: I have two Same Code but One of them Doesnt Work - beginner721 - Jan-22-2021

Thanks all of you.
I tried to fix maybe 2 hours but I cant fix.
Maybe I need to rest :)
Thx again.


RE: I have two Same Code but One of them Doesnt Work - deanhystad - Jan-22-2021

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.


RE: I have two Same Code but One of them Doesnt Work - beginner721 - Jan-22-2021

(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