Python chuyển đổi EST sang GMT
Mẹo nhanh ngắn này phục vụ nhiều hơn như một lời nhắc nhở cho bản thân tôi. Tôi biết tôi không chỉ nói cho bản thân mình khi tôi nói việc chuyển đổi ngày và giờ giữa các múi giờ có thể thực sự khiến bạn đau đầu. Đây là bản tóm tắt nhanh về xử lý chuyển đổi múi giờ với các đối tượng datetime trong Python Show
Bài viết nhanh này sẽ mô tả
Chúng ta sẽ cần hai thư viện Python cho việc này, pytz và Python's datetime >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)02 >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)03- Trả về một đối tượng ngày giờ trong múi giờ hiện tại của bạn, nhưng nó không nhận biết múi giờ >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)04 - Trả về một đối tượng ngày giờ ở múi giờ utc, nhưng NGẪU NHIÊN, nó không nhận biết múi giờ Nếu bạn muốn chuyển đổi bất kỳ ngày giờ nào từ múi giờ này sang múi giờ khác, trước tiên chúng ta cần biết múi giờ ban đầu và gán nó cho đối tượng datetime Trong ví dụ trên, chúng tôi biết >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)05 là UTC, nhưng nó không nhận biết múi giờ. Chúng ta phải chỉ định một múi giờ. Trong dự án của bạn, có thể bạn đã quyết định lưu tất cả múi giờ của mình vào múi giờ địa phương. Nói chung, nên luôn lưu trong UTC Chỉ định múi giờHãy mang Pytz vào >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)06 Để xem tất cả các múi giờ mà Pytz có, for tz in pytz.all_timezones: Hãy chỉ định múi giờ cho >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)05 từ trước đó >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)08 Trong thiết bị đầu cuối và gõ >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)05, bạn sẽ thấy, datetime.datetime(2020, 5, 13, 8, 39, 29, 220134, tzinfo= Nếu chúng ta >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)10 2020–05–13 08. 39. 07. 109762+00. 00 Chúng tôi biết múi giờ Chuyển đổi giữa các múi giờBây giờ, nếu chúng ta muốn chuyển đổi giữa các múi giờ, các đối tượng >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)020 có hàm >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)021 hữu ích Giả sử tôi muốn chuyển đổi sang múi giờ của Brisbane (ở Úc) (tôi làm việc với một khách hàng ở Úc, nơi đã truyền cảm hứng cho bài viết này) brisbane = utcnow. múi giờ astime(pytz. múi giờ("Úc/Brisbane")) Nếu bây giờ chúng ta gõ >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)022, datetime.datetime(2020, 5, 13, 18, 11, 14, 960814, tzinfo= Nếu chúng ta >>> import time >>> time.strptime("30 Nov 00", "%d %b %y") time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1)023 nó 2020–05–13 18. 11. 14. 960814+10. 00 Tóm lược
Thời gian hạnh phúc, chuyển đổi hạnh phúc
|