Я хочу, чтобы проверить, если вход число (поплавок с 0, один или два знака после запятой) и больше, чем 0Проверка ввода десятичное число
def getnumber():
print ("write a number: \n")
isValid = False
while not isValid:
try:
number = float(raw_input().replace(",","."))
if number >= 0:
isValid=True
else:
print ("Number not valid")
isValid = False
getnumber()
except:
print ("Number not valid")
return number
У меня есть следующие проблемы:
1- Я не знаю, как проверить, если есть только две десятичные
2- код не возвращает число, если сначала я ввести отрицательное число
кто-нибудь знает, как это исправить?
Большое спасибо
Вы всегда можете проверить строку, чтобы увидеть, если есть один '.' и 2 знака после периода. – nbryans
Я не уверен, почему вы заменяете запятые на десятичные точки. – holdenweb
dang it, почему так много людей используют цикл while ** и recursion ** для ввода? удалить вызов 'getnumber()' внутри функции разрешит # 2. –