- Запросит у пользователя номер
- Если пользователь вводит
'q'
, он покидает программу. - Если пользователь вводит нецелое значение, выведите:
"Please enter a number"
и запросите первое число еще раз. - Если пользователь вводит целое число, преобразуйте его в
int()
и попросите второй номер. - Если пользователь вводит
'q'
для второго номера, закройте программу. - Если пользователь вводит не целое значение для второго номера, выход:
"Please enter a number."
и попросить второго числа снова - Если пользователь не ввести целое число, преобразовать его в
int()
. - Отображение их фактор (Имейте в виду, что вы не можете разделить на 0.)
Это то, что я сделал:Как я могу улучшить эту программу?
print("Give me two numbers and I will divide them.")
print("Enter 'q' to quit.")
while True:
first_number = raw_input('\nFirst number: ')
if first_number != 'q':
try:
first_number = int(first_number)
except ValueError:
print("Please enter a number.")
continue
else:
break
while True:
second_number = raw_input("Second number: ")
if second_number != 'q':
try:
second_number = int(second_number)
except ValueError:
print("Please enter a number.")
continue
else:
break
try:
print(first_number/second_number)
break
except ZeroDivisionError:
print("You cannot divide by 0.")
Если ваш код работает, вы должны использовать проверку кода, а не SO. Они дают более глубокий обзор. – Uriel
http://codereview.stackexchange.com/ –
Первое очевидное улучшение: код для получения первого и второго номера одинаковый, поэтому его следует учитывать как функцию. –