Python timestamp to datetime and vice-versa

1. What is a Timestamp

A timestamp represents time as the number of seconds since January 1, 1970 (Unix Epoch).

import time

timestamp = time.time()
print(timestamp)  # e.g. 1732452305.4829

It is commonly used in databases, APIs, and distributed systems.


2. Convert Timestamp → datetime (Local Time)

from datetime import datetime

timestamp = 1732452305
dt = datetime.fromtimestamp(timestamp)

print(dt)

Returns a readable local datetime object.


3. Convert Timestamp → UTC datetime

from datetime import datetime

timestamp = 1732452305
utc_dt = datetime.utcfromtimestamp(timestamp)

print(utc_dt)

Ensures consistency across global systems.


4. Convert datetime → Timestamp

Transforms a datetime object into Unix epoch seconds.


5. Timestamp Conversion with Formatting

Useful for human-readable logs and reports.


6. Using time Module for Conversion

Generates formatted string without datetime objects.


7. Convert UTC Timestamp to Local Timezone

Critical for timezone-aware applications.


8. Convert datetime String → Timestamp

Common in API and log file processing.


9. Millisecond Timestamp Handling

Required for JavaScript and some REST APIs.


10. Enterprise Example: Database Time Normalization

Standard pattern for system-wide time normalization.


Conversion Summary

Operation
Method

Timestamp → Local datetime

datetime.fromtimestamp()

Timestamp → UTC datetime

datetime.utcfromtimestamp()

datetime → Timestamp

datetime.timestamp()

Timestamp → String

time.ctime()

String → Timestamp

datetime.strptime().timestamp()


Best Practices

  • Store timestamps in UTC internally

  • Convert to local timezone only for presentation

  • Prefer datetime objects for logic

  • Avoid mixing timestamps and formatted strings directly


Common Pitfalls

  • Forgetting timezone awareness

  • Using milliseconds instead of seconds

  • Misinterpreting UTC vs local time

  • Formatting before conversion


Last updated