Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Python 3.4 Human readable date problem Here is my code which does not work. Plea

ID: 3812987 • Letter: P

Question

Python 3.4 Human readable date problem

Here is my code which does not work. Please help me with this problem in python.

Write the function readable-interval that takes a string consisting of a human-readable time interval Homework #3 CSE 101 Spring 2017 Page 3 and converts it into a list of six integers, given in this order: of years, of months, t of days, #of hours, of minutes, of seconds] The input values stored within the string can be quite scrambled and consist of multiple, repeated time components (days, months, etc.), as shown in the examples below. If a time component appears more than once, the values are be added. The time units might be given in singular or plural form (e.g., "month" and "months" are both valid). There will always be at least (but not necessarily exactly) one space between the tokens (i.e., components) of the string. Examples: Function Call: readable-interval 1 year 2 months 3 seconds') Return Value: 1, 2, 0, 0, 0, 31 Function Call: readable-interval 1 second 2 years 3 seconds 7 months 6 days' Return Value: [2, 7, 6, 0, 0, 4 Function Call 4 hours 17 minutes') readable interval 1 days 4 days 3 years Return Value: 13, 0, 5, 4, 17, 01 Function Call readable interval 6 hours 20 minutes 421 seconds Return Value: [0, 0, 0, 6, 20 421] Function Call readable interval 0 days 0 months 7 months 18 years') Return Value: 18 7, 0, 0, 0, 01

Explanation / Answer

Answer:

s=input().split(" ")
def readable_interval(interval):
intervals = [0, 0, 0, 0, 0, 0]
for i in range(len(s)):
if s[i] == 'years' or s[i] == 'year':
intervals[0] += int(s[i-1])
elif s[i] == 'month' or s[i] == 'months':
intervals[1] += int(s[i-1])
elif s[i] == 'day' or s[i] == 'days':
intervals[2] += int(s[i-1])
elif s[i] == 'hour' or s[i] == 'hours':
intervals[3] += int(s[i-1])
elif s[i] == 'minute' or s[i] == 'minutes':
intervals[4] += int(s[i-1])
elif s[i] == 'second' or s[i] == 'seconds':
intervals[5] += int(s[i-1])
return intervals
print(readable_interval(s))

Input (stdin)

Your Output