AttributeError: 'str' object has no attribute 'hour'
时间: 2023-08-06 08:02:49 浏览: 657
如果你得到了 `'str' object has no attribute 'hour'` 的错误,那意味着你的输入对象是一个字符串而不是 `datetime.time` 对象。在转化之前,你需要确保将字符串正确地转换为 `datetime.time` 对象。
下面是一个修改后的代码示例,它将接受一个字符串作为输入,然后将其转换为 `datetime.time` 对象,并将其转化为字符串和数字:
```python
from datetime import datetime, time
def convert_to_time_obj(time_str):
dt = datetime.strptime(time_str, "%H:%M:%S")
return dt.time()
def time_to_string(t):
return t.strftime('%H:%M:%S')
def time_to_number(t):
seconds = t.hour * 3600 + t.minute * 60 + t.second
return seconds
# 示例用法
time_str = "12:34:56"
t = convert_to_time_obj(time_str)
print(time_to_string(t))
print(time_to_number(t))
```
在代码中,`convert_to_time_obj` 函数使用 `strptime` 方法将时间字符串转换为 `datetime.datetime` 对象,然后通过 `time()` 方法获取 `datetime.time` 对象。接下来,你可以使用 `time_to_string` 和 `time_to_number` 函数将其转换为字符串和数字。
确保将你的时间字符串传递给 `convert_to_time_obj` 函数,以便正确地将其转换为 `datetime.time` 对象进行后续操作。
阅读全文
相关推荐


















