繁体   English   中英

如何在 python 中获得第二天的名称

[英]How can I get the next day name in python

我尝试了这段代码,但它只给了我当天的名称。

我怎样才能得到第二天的名字?

import datetime
d = datetime.datetime.now()

days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
a = days[d.weekday()] 

您可以使用 strftime:

(d + datetime.timedelta(1)).strftime('%A')
>>> 'Wednesday'

您可以向给定日期添加天数以生成该日期的新datetime时间 object:

tomorrow = d +datetime.timedelta(days=1)
print(days[d.weekday()])

第一步:计算明天。 第二步:获取明天的名称

import datetime
d = datetime.datetime.now()
tomorrow = d + datetime.timedelta(days=1)

days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
a = days[tomorrow.weekday()]

首先使用timedelta在您的日期中添加一天,然后使用strftime('%A')获取星期的名称。 无需额外的days列表。

import datetime

next_day = datetime.datetime.now() + datetime.timedelta(days=1)
print(next_day.strftime('%A'))

不需要硬编码数组,使用strftime()

import datetime

tomorrow = datetime.date.today() + datetime.timedelta(days=1)

print(tomorrow.strftime('%A'))
# Wednesday

在线尝试!

import datetime
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']

只需获取数组中的下一个数字,因为当天获取当前:

d = datetime.datetime.now()
# Monday

a = days[d.weekday()+1]
# Tuesday

我们可以使用模运算符%来环绕我们在天数列表中的查找:

import datetime
d = datetime.datetime.now()

days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']

today_name = days[d.weekday()]

tomorrow_name = days[(d.weekday() + 1) % 7]

https://docs.python.org/3.3/reference/expressions.html#binary-arithmetic-operations

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM