How to add seconds on a datetime value in Python?

Each Answer to this Q is separated by one/two green lines.

I tried modifying the second property, but didn’t work.

Basically I wanna do:

datetime.now().second += 3

Have you checked out timedeltas?

from datetime import datetime, timedelta
x = datetime.now() + timedelta(seconds=3)
x += timedelta(seconds=3)

You cannot add seconds to a datetime object. From the docs:

A DateTime object should be considered immutable; all conversion and numeric operations return a new DateTime object rather than modify the current object.

You must create another datetime object, or use the product of the existing object and a timedelta.


The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .