所以我想创建一个'计划者'或日记。我正在尝试创建代码,以便建议您在睡觉前一天或在您必须进行计划之前离开多少时间。
late = timedelta(hours=23)
current_time = now.hour,now.minute
time_left = (late - current_time).minutes
print 'So if the time is %s:%s, That means you have %s minutes left' % (now.hour,now.minute,time_left)
从查看其他主题这是我的方法,但我尝试了其他几种方法,如
late = datetime(datetime.day,datetime.month,datetime.year,23,00)
再次在其他线程上看到了这一点。我已经尝试了很多方法,现在我开始迷惑自己如何解决它。
再次感谢您提前提供任何帮助
编辑: 使用时
late = datetime(datetime.day,datetime,month,datetime.year,23,00)
我得到了Valuerror'日超出了一个月的范围'
并使用当前代码
late = timedelta(23,00)
我得到了一个类型错误'不支持的操作数类型 - :'datetime.timedelta'和'tuple'在这个例子中。
我只想让代码输出晚上11点(或23点)与当前时间(分钟)之间的时差。抱歉没有更清楚
答案编辑: 感谢您的评论和答案,我正在使代码变得复杂并且没有正确使用datetime(),
y = today.year
m = today.month
d = today.day
late = datetime(y,m,d,23,0,0)
我的月份和日期是错误的,并且时间格式错误。
感谢帮助人员。
答案 0 :(得分:4)
以下内容将演示如何实现您想要实现的目标
from datetime import datetime
today = datetime.today()
y = today.year
m = today.month
d = today.day
late = datetime(y,m,d,23,0,0)
now = datetime.now()
timeDiff = late - now
print 'So if the time is %s:%s, That means you have %s minutes left' % (now.hour,now.minute,timeDiff.seconds/60)
{date}方法已经实现了日期时间,但显然要使用运算符,两个操作数都必须是datetime类型。
__sub__
当你从另一个日期时间对象中减去一个日期时间对象时,你会得到一个timedelta类型的对象。
>>> datetime.now().__class__
<type 'datetime.datetime'>
datetime代表时间戳,而timedelta代表时差。
可以从日期时间对象中减去timedelta对象,但反之亦然,这是不言自明的。
>>> (datetime(2016,04,19)-datetime(2016,04,18)).__class__
>>> <type 'datetime.timedelta'>