Convert Date time to UTC Time in python [duplicate] - python

This question already has answers here:
How do I parse an ISO 8601-formatted date?
(29 answers)
Parsing date, time and zone to UTC datetime object
(1 answer)
Closed 9 months ago.
I have datetime value in format of 2022-01-26T07:01:36-08:00 (based on which user fetches data, it will have local timezone, like -08:00, +05:30)
I want to convert this time into UTC Time.
I saw multiple example of pytz but couldn't figure out how to convert using pytz or datetime. datetime value will be based on machine timezone so I can't hard code timezone value also.

Related

I have a dataframe with a date column in the following format: 20130526T150000. How do you change this column to datetime 2013-05-26 15:00:00? [duplicate]

This question already has answers here:
How to define format when using pandas to_datetime?
(2 answers)
Convert Pandas Column to DateTime
(8 answers)
Closed 5 months ago.
Does anyone know how to change 20130526T150000 to datetime format?
One note: the 'T' is usefull. Use pd.to_datetime() directly, the T is actually usefull as it denotes the iso format and will help not confuse for some locales (some countries have the month first, then the day, others the oposite - iso goes from most significant to less: year, month, day)...
pd.to_datetime("20130526T150000")
Timestamp('2013-05-26 15:00:00')
If you want to be more explicit, specify the format:
pd.to_datetime("20130526T150000", format=...)
However, this might be a duplicate: How to define format when using pandas to_datetime? ... For best results, if you are doing a conversion of a column, use Convert Pandas Column to DateTime

Python Convert time in one zone to time in another [duplicate]

This question already has answers here:
Python Timezone conversion
(10 answers)
Closed 1 year ago.
I have a date time say 06-07-2021 11:59:00 (mm-dd-yyyy HH:MM:SS) which is time in EST.
This time need to be changed directly to UTC.
To be noted that EST follows Day light saving whereas UTC would not.
from datetime import datetime, timedelta, timezone
import time
# make datetime from timestamp, thus no timezone info is attached
now = datetime.fromtimestamp(time.time())
# make local timezone with time.timezone
local_tz = timezone(timedelta(seconds=-time.timezone))
# attach different timezones as you wish
utc_time = now.astimezone(timezone.utc)
local_time = now.astimezone(local_tz)
print(utc_time.isoformat(timespec='seconds'))
print(local_time.isoformat(timespec='seconds'))

How to convert a Zulu timestamp to local time zone? [duplicate]

This question already has answers here:
Convert zulu time string to MST datetime object
(2 answers)
How do I parse an ISO 8601-formatted date?
(29 answers)
Closed 1 year ago.
I know this question has been asked in different forms, but I'm not finding what I need. I'm looking for a way to convert the following date / time to my local time zone using Python. Note the time zone of "Z" and the "T" between the date and time, this is what's throwing me off.
"startTime": "2021-03-01T21:21:00.652064Z"
the datetime module is your friend. You seem to be dealing with a date-time stamp in ISO format. The datetime module has a class method to generate a datetime object from an ISO formatted string.
from datetime import datetime
dateinput = "2021-03-01T21:21:00.652064Z"
stamp = datetime.fromisoformat(dateinput)
But here you will get an error because the trailing 'Z' is not quite right. If you know that it's always going to be there, just lop off the last character. Otherwise you might have to do some string manipulation first.
stamp = datetime.fromisoformat(dateinput[:-1])
See also the strptime() class method to get datetime objects from arbitrarily formatted strings.
Hoping this helps...
datetime and pytz modules! Also depends on what you need, but below is the date and time object without the miliseconds part and a simple conversion to Berlin timezone.
import datetime
from pytz import timezone
berlin_timezone = pytz.timezone('Europe/Berlin')
your_time = datetime.datetime.strptime(startTime.split(".")[0], "%Y-%m-%dT%H:%M:%S")
your_time_utc = your_time.astimezone(berlin_timezone)

How to find the current date [duplicate]

This question already has answers here:
Getting today's date in YYYY-MM-DD in Python?
(12 answers)
Closed 4 years ago.
I need to get the current date but in this format:
<dd>/<mm>/<yyyy>
Is there any method that i can use?
I only found different formats and things I can't use for now.
For working with python.
Try this:
from datetime import date
timeNow = str(datetime.now())
print(timeNow)
import datetime
d = datetime.datetime.today()
print (datetime.date.strftime(d, "%d/%m/%y"))

how to get timezone-aware midnight datetime in python? [duplicate]

This question already has answers here:
How do I get the UTC time of "midnight" for a given timezone?
(6 answers)
Closed 8 years ago.
I'm working in django, but standard python solution is ok too.
I'm converting a code which uses a naive-datetime to use aware-datetime.
Below is the original code:
today = datetime.today()
MyClass.objects.filter(datetimefield__range=(today, today+datetime.timedelta(1)) )
How do I convert it to use timezone-aware time?
If the time is jun/3rd/7:20pm locally,
I'd like to get datetime range of [jun/3rd/00:00am, jun/4th/00:00am]
(midnight to midnight which will include now)
I know this is very old, but using django.utils.timezone this is fairly straightforward.
(nothing concerning timezones ever seems easy to me)
# this is could be any datetime.date
my_date = timezone.now().date()
dt_at_local_midnight = timezone.make_aware(
timezone.datetime.combine(my_date, time.min),
timezone.get_current_timezone())
and alternative that might be better is listed in the first comment below.

Categories