【发布时间】:2022-01-12 04:33:51
【问题描述】:
我有一个下面的列表,
e= [datetime.date(2011, 3, 12),
datetime.date(2014, 3, 12),
datetime.date(2021, 12, 12)]
并且想要编写一个程序来检查给定日期是否在函数中通过,能够检查日期是否存在于此列表中。
这是我正在尝试的示例代码:
def defd(a,b,c):
if datetime.date(a,b,c)==e:
print('Date exists')
else:
print('Date doesnt exists')
defd(2014,3,12)
o/p 显示日期不存在,你能告诉我我哪里出错了吗?
【问题讨论】:
-
你试过解析日期而不是仅仅传递一个字符串
-
我已经编辑了我的问题,你现在可以看到了。
-
"if datetime.date(a,b,c)==e:" 嗯,是的,当然你在这里创建的
datetime.date不等于一个列表,就像你不等于你所在国家的人口普查一样。如果问题是实际上“我如何检查列表中是否存在某些内容?”,那么这与datetime类无关,并且通过互联网搜索也很容易回答或遵循任何教程。 -
@KarlKnechtel,日期时间列表实际上来自我创建的类方法,因此列表 e 本身就是该类的对象,我已将其附加到列表中。因此,我将采用这种方法。
-
列表来自哪里并不重要。如果您的问题是“我如何检查列表是否包含此日期时间?”,那么您可以使用与检查列表中是否有其他内容相同的方式 - 使用
in。否则,您需要解释实际问题是什么。在我看来,根据您的代码,您没有真正的问题 - 您只是有一个错字。
标签: python list function date datetime