12
est la date du jour. dateutil
prend les composants à partir de la date et de l'heure actuelles pour tenir compte de la date ou de l'année manquante dans la date (il ne le fait pas pour le mois, seulement la date ou l'année). Comme un autre exemple serait une date comme - Janauary 20
- cela serait analysé comme 2015/01/12
prenant l'année 2015 à partir de l'heure actuelle.
Malheureusement, je n'ai pas encore trouvé d'options ou d'autres pour arrêter ce comportement. Je crois que la meilleure option pour vous serait de fournir une liste des formats datetime valides que vous attendez, puis essayez manuellement datetime.datetime.strptime sur eux, à l'exception de ValueError. Exemple -
def isdate(dt, fmt):
try:
datetime.datetime.strptime(dt, fmt)
return True
except ValueError:
return False
validformats = [...]
dates =[...]
for x in dates:
if any(isdate(x,fmt) for fmt in validformats):
print(x, 'is valid date')
Pourriez-vous fournir un exemple de code plus détaillé? – farzad
Mise à jour du code que j'essaie. –