如何在python上解决-:“str”和“datetime.timedelta”不支持的操作数类型
我正在努力从当前时间中减去-10分钟
https://docs.python.org/3/library/datetime.html
import datetime
current_time = datetime.datetime.strftime(datetime.datetime.today(), '%Y%m%d%H%M%S')
print("현재시간 : ", current_time) # current_time = 20210813170951
current_time_minute10 = datetime.datetime.today() - datetime.timedelta(minutes=10)
current_time_minute10 = datetime.datetime.strftime(current_time_minute10, '%Y%m%d%H%M%S')
print("현재시간 : ", current_time_minute10) # current_time_minute10 = 20210813165951
current_time_minute10_2 = current_time_minute10 - datetime.timedelta(minutes=10)
current_time_minute10_2 = datetime.datetime.strftime(current_time_minute10_2,
'%Y%m%d%H%M%S')
print("현재시간 : ", current_time_minute10_2) # current_time_minute10_2 = 20210813164951
current_time_minute10_3 = current_time_minute10_2 - datetime.timedelta(minutes=10)
current_time_minute10_3 = datetime.datetime.strftime(current_time_minute10_3,
'%Y%m%d%H%M%S')
print("현재시간 : ", current_time_minute10_3) # current_time_minute10_3 = 20210813163951
File "[redacted]", line 10, in <module>
current_time_minute10_2 = current_time_minute10 - datetime.timedelta(minutes=10)
TypeError: unsupported operand type(s) for -: 'str' and 'datetime.timedelta'
例如:当前_时间=20210813171700
当前时间分钟10=20210813170700
当前时间分钟10分钟2=20210813165700
当前时间分钟10分钟3=20210813164700
您正在用下一行中的
str
类型覆盖current_time_minute10
的初始datetime
对象值我不知道你为什么想要字符串值。但如果只是用于打印,请尝试以下方法:
现在您可以在下一次减法中使用
current_time_minute10
,操作将在datetime
和timedelta
对象之间进行,这不会引发TypeError
您可以为字符串使用新的变量,例如
current_time_string
和current_time
不应将日期时间转换为字符串(例如,使用
.strftime
)相关问题 更多 >
编程相关推荐