Python将DayOfWeek检索为整数

phi*_*con 3 python python-datetime

我需要将星期几作为整数.

如果我在一个月中使用以下内容,mydate.day我希望在工作日也这样做.

我试过,mydate.weekday但这并没有给我整数(星期日0到星期六为6).

有什么建议?

fal*_*tru 11

如果您正在使用datetime.datetime,请使用datetime.datetime.weekday方法:

>>> d = datetime.datetime.now()
>>> d
datetime.datetime(2014, 11, 24, 22, 47, 3, 80000)
>>> d.weekday()  # Monday
0
>>> (d.weekday() + 1) % 7
1
Run Code Online (Sandbox Code Playgroud)

你需要(... + 1)%7,因为该方法在星期一返回0,在星期日返回6.

UPDATE

您还可以使用datetime.datetime.isoweekday哪个返回1表示星期一,7表示星期日.

>>> d.isoweekday() % 7
1
Run Code Online (Sandbox Code Playgroud)

  • 您可能还会发现https://docs.python.org/2/library/datetime.html#datetime.date.isoweekday很有用 - 它给出星期一= 1,...,星期日= 7. (2认同)