Transaction_Code
== "W"
,"w"
,"D"
或"d"
的Python ELIF为了不工作,我想
如果不是,它应该运行Process_Invalid_Code(Previous_Balance)
正在发生的事情,但是如果是输入Transaction_Code
!= "W"
,"w"
,"D"
或"d"
后,它将继续运行"What is your previous balance?"
和"How much is the transaction amount?"
输入...
只有到那时,你给那些输入它运行Invalid_Transaction_Code
后,我希望发生的是,它抛出Invalid_Transaction_Code ("Invalid Transaction Code!")
前等不浪费用户的时间要求上余额和交易..
不有道理?
下面是代码
#The main function definition
def main():
Name = input("What is your name? ")
Account_ID = input("What is your account ID? ")
Transaction_Code = input("Press W or w for Withdrawal, Press D or d for Deposit: ")
Previous_Balance = float(input("What is your previous balance? "))
Transaction_Amount = float(input("How much is the transaction amount? "))
if Transaction_Code == "W" or Transaction_Code == "w":
Withdrawal_Process(Previous_Balance, Transaction_Amount)
elif Transaction_Code == "D" or Transaction_Code == "d":
Deposit_Process(Previous_Balance, Transaction_Amount)
else:
Process_Invalid_Code(Previous_Balance)
#Defines the Deposit Process
def Deposit_Process(Previous_Balance, Transaction_Amount):
New_Balance = Transaction_Amount + Previous_Balance
Print_Function(New_Balance)
#Defines the Withdrawal Process
def Withdrawal_Process(Previous_Balance, Transaction_Amount):
if Transaction_Amount > Previous_Balance:
print("Invalid Transaction: Not Sufficient Funds!")
New_Balance = Previous_Balance
Print_Function(New_Balance)
else:
New_Balance = Previous_Balance - Transaction_Amount
Print_Function(New_Balance)
#The Invalid Code Function Definition
def Process_Invalid_Code(Previous_Balance):
New_Balance = Previous_Balance
print ("Invalid Transaction Code!")
print ("Please type W or w for Withdrawal")
print ("or type D or d for Deposit")
Print_Function(New_Balance)
#Defines the Print Function
def Print_Function(New_Balance):
print ("Your balance is now $", format(New_Balance, '.2f'))
#Call the main function
main()
你在问什么?你的代码有什么问题? – Nicarus
您需要在Transaction_Code输入行后面的main()中放入适当的'if'语句。 – jcfollower
此外,让您的生活更轻松,并将您的输入强制转换为单个外壳(使用lower或upper)以将输入更改为大写或小写,并与单个外壳进行比较,那么您所要做的就是'Transaction_Code.lower()==“w”'。或者只是'Transaction_code'('w','W')' – idjaw