Hướng dẫn convert utc string to datetime python - chuyển đổi chuỗi utc thành datetime python
Tôi đang sử dụng API PayPal và tôi lấy lại dấu thời gian ở định dạng sau. Tôi cố gắng phân tích cú pháp điều này vào một đối tượng DateTime bằng cách sử dụng Strptime, nhưng tôi gặp lỗi sau: Show
Ngoài ra, vì định dạng này được cho là một định dạng khá tiêu chuẩn không có chức năng có sẵn cho việc này? EDIT: OK có vẻ là một lỗi đánh máy. %M đầu tiên nên là %m hỏi ngày 24 tháng 2 năm 2012 lúc 15:58Feb 24, 2012 at 15:58
arno_varno_varno_v 16.4K3 Huy hiệu vàng27 Huy hiệu bạc31 Huy hiệu Đồng3 gold badges27 silver badges31 bronze badges Trình phân tích cú pháp từ DateUtil là bạn của bạn. Bạn sẽ phải cài đặt PIP DateUtil nhưng bạn đã lưu túi và túi mã chuyển đổi ngày:
Bạn có thể sử dụng nó như thế này.
Bạn sẽ thấy bạn có thể xử lý hầu hết mọi định dạng chuỗi ngày với trình phân tích cú pháp này và bạn sẽ nhận được một ngày Python tiêu chuẩn tốt đẹp Đã trả lời ngày 24 tháng 2 năm 2012 lúc 16:31Feb 24, 2012 at 16:31
Matt Alcockmatt AlcockMatt Alcock 12k13 huy hiệu vàng45 huy hiệu bạc60 huy hiệu đồng13 gold badges45 silver badges60 bronze badges 1 Có vẻ như bạn đang trộn 3 (phút) và 4 (tháng).Đã trả lời ngày 24 tháng 2 năm 2012 lúc 16:01Feb 24, 2012 at 16:01
Jcolladojcolladojcollado 38.4K8 Huy hiệu vàng102 Huy hiệu bạc133 Huy hiệu đồng8 gold badges102 silver badges133 bronze badges Vấn đề là bạn sử dụng 3 hai lần. Sử dụng 4 trong các tháng:
Đã trả lời ngày 24 tháng 2 năm 2012 lúc 16:02Feb 24, 2012 at 16:02
Fred Foofred FooFred Foo 348K73 Huy hiệu vàng726 Huy hiệu bạc824 Huy hiệu Đồng73 gold badges726 silver badges824 bronze badges 2 Bạn có một lỗi đánh máy. 3 được sử dụng hai lần. Bạn có nghĩa là sử dụng 4 trong tháng. Từ các tài liệu:
Đã trả lời ngày 24 tháng 2 năm 2012 lúc 16:04Feb 24, 2012 at 16:04
istrubleistrubleistruble Huy hiệu vàng 13K249 Huy hiệu bạc51 Huy hiệu đồng2 gold badges49 silver badges51 bronze badges
Bài viết này sẽ thảo luận về cách chuyển đổi thời gian UTC (trong chuỗi hoặc dưới dạng đối tượng DateTime) sang thời gian địa phương trong Python. Giả sử bạn đang ở trong một múi giờ không phải là UTC. Nhưng bạn có một DateTime trong UTC Timezone và bạn muốn chuyển đổi nó thành timezone địa phương của bạn. Ví dụ: bạn có dấu thời gian UTC như một chuỗi, 10/21/2021 8:18:19 Bây giờ bạn muốn chuyển đổi nó thành timezone địa phương của bạn. Nếu bạn đang ở châu Á/calcutta timezone, thì kết quả sẽ giống như, 10/21/2021 13:48:19 Tất cả các giải pháp chúng tôi sẽ thảo luận để chuyển đổi UTC sang thời gian địa phương, sẽ áp dụng cho tất cả các múi giờ. Điều đó có nghĩa là, bất kể thời gian địa phương của bạn là gì, bạn có thể dễ dàng chuyển đổi DateTime UTC sang thời gian địa phương của bạn bằng các giải pháp này. Hãy bắt đầu nhìn vào chúng từng cái một. Chúng ta có thể sử dụng mô -đun DateTime cho việc này. Các bước thực hiện như sau, Quảng cáo
Hàm astimezone () chấp nhận một thể hiện múi giờ tz làm đối số. Nó trả về một thể hiện DateTime mới theo tham số múi giờ được chỉ định TZ, tức là nó chuyển đổi thời gian trong cuộc gọi DateTime thành múi giờ được chỉ định và trả về một đối tượng DateTime mới chứa nó. Hãy cùng xem một ví dụ hoàn chỉnh để chuyển đổi chuỗi DateTime UTC sang thời gian cục bộ, tức là. from datetime import datetime, tzinfo from dateutil import tz import pytz dt_str = "10/21/2021 8:18:19" format = "%m/%d/%Y %H:%M:%S" # Create datetime object in local timezone dt_utc = datetime.strptime(dt_str, format) dt_utc = dt_utc.replace(tzinfo=pytz.UTC) print('Datetime in UTC Time zone: ', dt_utc) # Get local timezone local_zone = tz.tzlocal() # Convert timezone of datetime from UTC to local dt_local = dt_utc.astimezone(local_zone) print('Datetime in Local Time zone: ', dt_local) local_time_str = dt_local.strftime(format) print('Time as string in Local Time zone: ', local_time_str) Output: Datetime in UTC Time zone: 2021-10-21 08:18:19+00:00 Datetime in Local Time zone: 2021-10-21 13:48:19+05:30 Time as string in Local Time zone: 10/21/2021 13:48:19 Chuyển đổi đối tượng DateTime UTC từ DateTime cục bộThay vì chuỗi, nếu bạn đã có đối tượng DateTime với thời gian UTC, chúng ta có thể chuyển đổi nó trực tiếp thành đối tượng DateTime bằng múi giờ cục bộ bằng astimezone (). Ví dụ, from datetime import datetime from dateutil import tz import pytz # Create Datetime object with UTC timezone dt_utc = datetime(2021, 10, 4, 9, 10, 34, 300030, tzinfo=pytz.UTC ) print('Datetime in UTC Time zone: ', dt_utc) # Get local timezone local_zone = tz.tzlocal() # Convert UTC to local time zone local_dt = dt_utc.astimezone(local_zone) print('Datetime in Local Time zone: ', local_dt) Output: 0Chuyển đổi DateTime UTC hiện tại thành DateTime cục bộ trong PythonGiả sử chúng ta có một đối tượng DateTime chứa thời gian hiện tại trong thời gian UTC và có thông tin múi giờ. Sử dụng astimezone (), chúng ta có thể chuyển đổi nó thành múi giờ địa phương và nhận thời gian địa phương hiện tại. Vì vậy, chúng tôi sẽ chuyển thời gian cục bộ như một đối số cho hàm astimezone (). Ví dụ, 1Output: 2Bản tóm tắt Chúng tôi đã học được cách chuyển đổi thời gian UTC sang timezone địa phương ở Python. Làm cách nào để chuyển đổi thời gian UTC cho đến nay trong Python?Phương pháp 1: Sử dụng hàm astimezone () Sử dụng từ khóa nhập, để nhập DateTime (để hoạt động với ngày và thời gian, Python có mô -đun gọi là DateTime). Sử dụng từ khóa nhập, để nhập múi giờ từ mô -đun PYTZ. Nhập định dạng ngày dưới dạng chuỗi bằng hàm input () và tạo một biến để lưu trữ nó.
Làm thế nào để bạn chuyển đổi UTC thành dấu thời gian trong Python?Làm cách nào để chuyển đổi dấu thời gian UTC thành DateTime trong Python ?.. Nhập DateTime DT = DateTime. ngày giờ.. DT_UTC_AWARE = DateTime. ngày giờ.. DT_UTC_NAIVE = DateTime. ngày giờ.. In (dt) # 1970-01-01 09:00:00 in (dt. Timestamp ()) # 0.0 in (loại (dt .. in (dt_utc_aware) # 1970-01-01 00: 00: 00+00: 00 in (DT_UTC_AWARE .. Làm cách nào để chuyển đổi một chuỗi thành DateTime trong Python?Chúng ta có thể chuyển đổi một chuỗi thành DateTime bằng hàm strptime ().Hàm này có sẵn trong các mô -đun DateTime và Time để phân tích một chuỗi vào các đối tượng DateTime và thời gian tương ứng.using strptime() function. This function is available in datetime and time modules to parse a string to datetime and time objects respectively.
Làm cách nào để chuyển đổi thời gian UTC sang thời gian của tôi?.Ví dụ: nếu bù thời gian địa phương của bạn là -5: 00 và nếu thời gian UTC được hiển thị là 11:00, hãy thêm -5 đến 11. Cài đặt thời gian khi được điều chỉnh cho bù là 06:00 (6:00 A.M.).Lưu ý ngày cũng theo định dạng UTC.Add the local time offset to the UTC time. For example, if your local time offset is -5:00, and if the UTC time is shown as 11:00, add -5 to 11. The time setting when adjusted for offset is 06:00 (6:00 A.M.). Note The date also follows UTC format. |