AttributeError: 'str' object has no attribute 'gmtime'
AttributeError: 'str' object has no attribute 'gmtime'
尽管我在调用该函数时两次都提供了类似的输入,但由于某种原因此代码不起作用。我只需要通过将两个 tuple/list 输入到 difference_in_date_tup() 来获得时间之间的差异。
代码:-
import time
def getcurrentdate():
a = time.gmtime(time.time())
year = a[0]
month = a[1]
day = a[2]
return day,month,year
def difference_in_date_tup(date1, date2):
"""Input dates as tuple/list: (dd,mm,yyy)"""
a = int(date1[0]) - int(date2[0])
b = int(date1[1]) - int(date2[1])
c = int(date1[2]) - int(date2[2])
return abs(a), abs(b), abs(c)
#This works.
print difference_in_date_tup([25,16,2015],getcurrentdate())
#But not this.
time = raw_input("Enter date in format dd/mm/yyyy: ")
t = time.split("/")
print t
print difference_in_date_tup(t,getcurrentdate())
我收到错误:-
(0, 10, 0)
Enter date in format dd/mm/yyyy: 25/16/2015
['25', '16', '2015']
Traceback (most recent call last):
File "C:\Users\Ninja\Desktop\test.py", line 24, in <module>
print difference_in_date_tup(t,getcurrentdate())
File "C:\Users\Ninja\Desktop\test.py", line 4, in getcurrentdate
a = time.gmtime(time.time())
AttributeError: 'str' object has no attribute 'gmtime'
问题在行-
time = raw_input("Enter date in format dd/mm/yyyy: ")
在第一行,您正在导入模块 time
,这会将 time
名称设置为指向那个 module
,但是在执行上面的行之后,time
名称现在指向用户输入的字符串,因此如果您尝试访问 time
之后,您将获得字符串而不是 time
模块。
我建议您将此变量重命名为其他名称。
尽管我在调用该函数时两次都提供了类似的输入,但由于某种原因此代码不起作用。我只需要通过将两个 tuple/list 输入到 difference_in_date_tup() 来获得时间之间的差异。 代码:-
import time
def getcurrentdate():
a = time.gmtime(time.time())
year = a[0]
month = a[1]
day = a[2]
return day,month,year
def difference_in_date_tup(date1, date2):
"""Input dates as tuple/list: (dd,mm,yyy)"""
a = int(date1[0]) - int(date2[0])
b = int(date1[1]) - int(date2[1])
c = int(date1[2]) - int(date2[2])
return abs(a), abs(b), abs(c)
#This works.
print difference_in_date_tup([25,16,2015],getcurrentdate())
#But not this.
time = raw_input("Enter date in format dd/mm/yyyy: ")
t = time.split("/")
print t
print difference_in_date_tup(t,getcurrentdate())
我收到错误:-
(0, 10, 0)
Enter date in format dd/mm/yyyy: 25/16/2015
['25', '16', '2015']
Traceback (most recent call last):
File "C:\Users\Ninja\Desktop\test.py", line 24, in <module>
print difference_in_date_tup(t,getcurrentdate())
File "C:\Users\Ninja\Desktop\test.py", line 4, in getcurrentdate
a = time.gmtime(time.time())
AttributeError: 'str' object has no attribute 'gmtime'
问题在行-
time = raw_input("Enter date in format dd/mm/yyyy: ")
在第一行,您正在导入模块 time
,这会将 time
名称设置为指向那个 module
,但是在执行上面的行之后,time
名称现在指向用户输入的字符串,因此如果您尝试访问 time
之后,您将获得字符串而不是 time
模块。
我建议您将此变量重命名为其他名称。