J'ai un tableau dans mon projet Python et j'ajoute des éléments à la matrice avec ce code:
items = [item for item in items if item['date'] + 10 <= time.time()]
5 Réponses :
Vous devrez utiliser l'objet chronomelta code>
Cela les supprimera aussi. Avez-vous vérifié votre réponse?
Merci. J'ai mis à jour la réponse..stesté ici. repl.it/@geofrocker2/removeitemfromarraybasedonate
Vous devez vérifier si TimePoint + 10 secondes est supérieure à celle du TimePoint actuel, car cela signifie que 10 secondes n'ont pas encore passé
items = [item for item in items if time.time() - item['date'] <= 10]
Vous souhaitez supprimer des éléments existants de plus de 10 secondes dans la liste, car vous devez enregistrer celui qui est inférieur à 10, changez votre code pour vérifier le contraire.
items = [item for item in items if item['date'] + timedelta(seconds=10) >= datetime.now()] it worked for me and removed all items where the date passed after 10 seconds
Tout d'abord, vous devez d'abord utiliser chronomelta. alors vous pouvez comparer facilement la date avec p> par exemple: P> for item in items:
past = datetime.datetime.now() - datetime.timedelta(seconds=2)
if item['date']<past:
items.remove(item)
Regardez cette ressource sur la compréhension de la liste .. digitalOcean.com / Communauté / Tutoriels / ...
Je connais la compréhension de la liste. Je viens de vous donner un exemple de travail. Donc, si vous utilisez DateTime: éléments = [élément pour l'élément dans les éléments si l'élément ['date'] + DateTime.Timedelta (secondes = 10) <= DateTime.dateTime.now ()]