我想了解以下内容:给定一个日期(datetime对象),一周中对应的日期是什么?
例如,星期天是第一天,星期一是第二天。。等等
然后如果输入的内容类似于今天的日期。
实例
>>> today = datetime.datetime(2017, 10, 20)
>>> today.get_weekday() # what I look for
产量可能是6(因为现在是星期五)
我想了解以下内容:给定一个日期(datetime对象),一周中对应的日期是什么?
例如,星期天是第一天,星期一是第二天。。等等
然后如果输入的内容类似于今天的日期。
实例
>>> today = datetime.datetime(2017, 10, 20)
>>> today.get_weekday() # what I look for
产量可能是6(因为现在是星期五)
当前回答
使用Canlendar模块
import calendar
a=calendar.weekday(year,month,day)
days=["MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURDAY","SUNDAY"]
print(days[a])
其他回答
要让星期天1点到星期六7点,这是解决问题的最简单方法:
datetime.date.today().toordinal()%7 + 1
所有这些:
import datetime
today = datetime.date.today()
sunday = today - datetime.timedelta(today.weekday()+1)
for i in range(7):
tmp_date = sunday + datetime.timedelta(i)
print tmp_date.toordinal()%7 + 1, '==', tmp_date.strftime('%A')
输出:
1 == Sunday
2 == Monday
3 == Tuesday
4 == Wednesday
5 == Thursday
6 == Friday
7 == Saturday
以下是如何将小端字符串日期列表转换为datetime:
import datetime, time
ls = ['31/1/2007', '14/2/2017']
for d in ls:
dt = datetime.datetime.strptime(d, "%d/%m/%Y")
print(dt)
print(dt.strftime("%A"))
如果你想用英语约会:
from datetime import datetime
datetime.today().strftime('%A')
'Wednesday'
阅读更多信息:https://docs.python.org/3/library/datetime.html#strftime-结构时间行为
假设你得到了日期、月份和年份,你可以做到:
import datetime
DayL = ['Mon','Tues','Wednes','Thurs','Fri','Satur','Sun']
date = DayL[datetime.date(year,month,day).weekday()] + 'day'
#Set day, month, year to your value
#Now, date is set as an actual day, not a number from 0 to 6.
print(date)
import datetime
int(datetime.datetime.today().strftime('%w'))+1
这应该会给你一个真实的数字-1=星期天,2=星期一,等等。。。