Итак, я признаю, что это домашнее задание, но я не прошу всех вас сделать это для меня, я просто ищу руководство.Нам нужно сделать так, чтобы программа на Python принимала время в формате Hours: Minutes (2:30) в одной строке и выводила количество времени в минутах.(т.е. 2 часа и 30 минут = 150 минут)
Мне все еще нужно выработать некоторые ограничения для ввода строки:
- Убедитесь, что используются только цифры и двоеточие
- Убедитесь, что он может принимать только пять символов (##: ##)
- Убедитесь, что средний символ является двоеточием (т. Е. Числа в правильном порядке)
- и введитеуверен, что если введено время, подобное 4:35, то ноль будет добавлен вперед автоматически
Я над этим поработаю позже - сейчас я решил поработать над математикой, которую получуиз ввода.
Для меня имело смысл разделить строку на две части: часы и минуты.Затем я умножил количество часов на 60 и добавил их к уже существующим минутам, чтобы получить общее количество минут.Тем не менее, прямо сейчас, введя время как 02:45 выводит мельчайшее количество 02020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020245.
1018 * Любая идея, что может идти здесь не так?Просто чтобы прояснить, это домашнее задание, и я хочу самостоятельно решить ограничения ввода, мне просто нужна помощь, чтобы пройти мимо этого математического вопроса.
#Henry Quinn - Python Advanced 4.0 Hours and Minutes
import re
print "This program takes an input of time in hours and minutes and outputs the amount of minutes."
count = 0
#I still need to work out while loop
#Supposed to make sure that a time is entered correctly, or error out
while (count <1):
time = raw_input("Please enter the duration of time (ex: 2:15 or 12:30): ")
if not re.match("^[0-9, :]*$", time):
print "Sorry, you're only allowed to use the numbers 0-9."
elif len(time) > 5:
print "Sorry, only five characters max allowed."
#MAKE THIS CHECK FOR A COLON
#elif
#elif
else:
count = count + 1
#If time = 12:45, hours should be equal to 12, and minutes should be equal to 45
hours = time[:2]
minutes = time[3:]
#Should convert hours to minutes
newhours = hours * 60
#Should make total amount of minutes
totalminutes = newhours + minutes
print "The total amount of elapsed minutes is %s" % (totalminutes)
raw_input("Please press Enter to terminate the program.")