Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Menukar Rentetan Waktu Tempatan kepada UTC dalam Python?
Menukar Rentetan Waktu Setempat kepada UTC
Dalam senario tertentu, kami mungkin menghadapi keperluan untuk menukar rentetan datetime daripada waktu tempatan kepada UTC. Untuk mencapai matlamat ini, kita boleh menggunakan modul datetime dan pytz Python.
Langkah 1: Menghuraikan Rentetan Waktu Setempat
Mulakan dengan menghuraikan rentetan waktu tempatan ke dalam datetime naif objek. Waktu tarikh yang naif tidak mempunyai maklumat zon waktu.
Langkah 2: Mengenalpasti Zon Waktu Setempat
Seterusnya, tentukan zon waktu setempat menggunakan modul pytz. Bina objek zon waktu berdasarkan maklumat ini.
Langkah 3: Memanipulasi dan Melampirkan Zon Waktu
Gunakan kaedah pytz.timezone() untuk mencipta objek zon waktu yang mewakili zon waktu tempatan. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa kerumitan masa penjimatan siang (DST) menimbulkan kesamaran.
Langkah 4: Menukar kepada UTC
Untuk menukar tarikh tarikh kepada UTC, gunakan kaedah astimezone() kepada datetime setempat. Kaedah ini melaraskan masa tarikh kepada UTC sambil mengambil kira perbezaan DST dan zon waktu lain.
Langkah 5: Memformat Rentetan UTC
Akhir sekali, gunakan kaedah strftime() untuk formatkan waktu tarikh UTC ke dalam rentetan yang dikehendaki perwakilan.
Contoh:
Pertimbangkan untuk menukar rentetan "2001-2-3 10:11:12" daripada zon waktu tempatan "America/Los_Angeles" kepada UTC:
from datetime import datetime import pytz local = pytz.timezone("America/Los_Angeles") naive = datetime.strptime("2001-2-3 10:11:12", "%Y-%m-%d %H:%M:%S") local_dt = local.localize(naive, is_dst=None) utc_dt = local_dt.astimezone(pytz.utc) print(utc_dt.strftime("%Y-%m-%d %H:%M:%S")) # Output: 2001-02-03 18:11:12
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Rentetan Waktu Tempatan kepada UTC dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!