#python #loops
Вопрос:
Поэтому я пытаюсь закодировать функцию оформления заказа, вот как это выглядит, на данный момент она не работает при выборе способа оплаты, я думаю, что это цикл или что я дважды использовал функцию оформления заказа == в функции.
def checkout(self): while True: if not shopping_cart: print("Your cart is empty, please add item to proceed to checkout") else: checkout = int(input('''Do you want to proceed to checkout? 1. Yes 2. No ''')) if checkout == 1: checkout = input('''Please select how you would like to pay for your purchase: 1. Gift Voucher 2. Credit / Debit Card 3. Paypal''') if checkout == 2: break else: if checkout == 1: input("Please enter your gift voucher code") print("Thank you") elif checkout == 2: input("Please enter your Credit / Debit card information") print("Thank you") elif checkout == 3: input("vffsdfsdfsd") print("TA") else: print("Please select a valid payment method") break
Ответ №1:
Это связано с тем, что вы используете одну и ту же переменную Do you want to proceed to checkout?
и Please select how you would like to pay
переменную, попробуйте изменить переменную для payment method
типа как payment_method
def checkout(self): while True: if not shopping_cart: print("Your cart is empty, please add item to proceed to checkout") else: checkout = int(input('''Do you want to proceed to checkout? 1. Yes 2. No ''')) if checkout == 1: payment_method = input('''Please select how you would like to pay for your purchase: 1. Gift Voucher 2. Credit / Debit Card 3. Paypal''') if checkout == 2: break else: if payment_method == 1: input("Please enter your gift voucher code") print("Thank you") elif payment_method == 2: input("Please enter your Credit / Debit card information") print("Thank you") elif payment_method == 3: input("vffsdfsdfsd") print("TA") else: print("Please select a valid payment method") break