【问题标题】:how to setup a weekday in python datetime without a specific date如何在没有特定日期的python datetime中设置工作日
【发布时间】:2018-11-18 03:17:56
【问题描述】:

我有一个类似s = "SUN 9:30 PM" 的字符串,即不是特定的一天,只有一个工作日的星期日。

如何将s 转换为datetime 对象?

from datetime import datetime
s = 'SUN 9:30 PM'
dt = datetime.strptime(s, '%a %I:%m %p')
print(dt.weekday())

但看起来python输出1900-01-01weekday is 0

【问题讨论】:

  • 你的预期输出是什么?
  • 你为什么要把它转换成日期时间对象?
  • 我的输入是“SUN 9:30 PM”,我的期望是:将此字符串传输到 python 日期时间对象。但是怎么做呢?

标签: python datetime weekday


【解决方案1】:

有一个名为dateutil 的简洁库可以在没有日期的字符串中查找工作日。

>>> from dateutil import parser
>>> dt = parser.parse("SUN 9:30PM")
>>> dt.weekday()
6
>>> dt = parser.parse("MON 9:30PM")
>>> dt.weekday()
0

这个库其实是datetime的扩展。

【讨论】:

  • 这不是我想要的。您的字符串“'JAN 7 1993 FRI 9:30 PM”有特定日期“JAN 7 1993”,但我的字符串没有特定日期。它只有“FRI 9:30 PM”。如何通过 strptime "FRI 9:30 PM" 设置 python 日期时间对象
  • 我找到了可能适合您的解决方案并更新了答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-08
  • 2016-03-08
  • 2014-12-06
  • 2012-10-01
  • 2011-06-25
相关资源
最近更新 更多