我正在尝试转换以下格式的日期:
2007-10-18 11:31:46 -0400 (Thu, 18 Oct 2007)
或
Thu, 18 Oct 2007 11:31:49 -0400
到星期几。即使在上述日期中指定了日期,但如何从上述日期中提取一周中的唯一一天?
答案 0 :(得分:0)
这太简单了吗
days = {
'mon': 'Monday',
'thu': 'Thursday',
# and the others
}
haystack = '2007-10-18 11:31:46 -0400 (Thu, 18 Oct 2007)'
for acronym, full_name in days.items():
if acronym in haystack.lower():
print(f"Found {full_name}")
答案 1 :(得分:0)
days = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
date = "2007-10-18 11:31:46 -0400 (Thu, 18 Oct 2007)"
for d in days:
if d in date:
print(d)
答案 2 :(得分:0)
您可以使用dateutil.parser
从字符串中获取datetime
对象:
from dateutil import parser
dt = parser.parse("2007-10-18 11:31:46 -0400")
# dt = datetime.datetime(2007, 10, 18, 11, 31, 46, tzinfo=tzoffset(None, -14400))
然后只需使用datetime.weekday
。这将为您提供一个从0
到6
的数字,其中0
是相对于您的时区的一周的第一天,默认情况下为星期一。
dt.weekday
# 3, starting from 0 so it's Thursday