Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana Menghuraikan Rentetan Cap Masa dengan Nama Zon Waktu Singkat dalam Python?

Bagaimana Menghuraikan Rentetan Cap Masa dengan Nama Zon Waktu Singkat dalam Python?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-24 08:59:30523semak imbas

How to Parse Timestamp Strings with Abbreviated Timezone Names in Python?

Menghuraikan Rentetan Cap Masa dengan Nama Zon Waktu Ringkas dalam Python

Menghuraikan rentetan cap masa dengan nama zon waktu yang disingkat menimbulkan cabaran unik dalam Python. Pustaka dateutil terbina dalam menyediakan fungsi parser.parse() yang memudahkan penghuraian cap masa, tetapi ia tidak secara semula jadi menangani singkatan zon waktu.

Untuk menangani isu ini, penyelesaian yang mudah dan berkesan menggunakan hujah kata kunci tzinfos dalam parser.parse(). Argumen ini menerima kamus memetakan singkatan zon waktu kepada offset GMT yang sepadan dalam beberapa saat.

Untuk mengisi kamus tzinfos, senarai singkatan dan offset zon waktu boleh dibuat secara manual atau diperoleh daripada sumber luaran. Setelah kamus diwujudkan, kod berikut menunjukkan cara menghuraikan rentetan cap masa dan mendapatkan semula zon waktu yang sepadan:

<code class="python">import dateutil.parser as dp

s = 'Sat, 11/01/09 8:00PM'

# Create timezone abbreviation to offset dictionary
tzd = {
    'PST': -8*3600,
    'PDT': -7*3600,
    'MST': -7*3600,
    'MDT': -6*3600,
    'CST': -6*3600,
    'CDT': -5*3600,
    'EST': -5*3600,
    'EDT': -4*3600
}

for tz_code in ('PST','PDT','MST','MDT','CST','CDT','EST','EDT'):
    dt = s+' '+tz_code
    print(dt, '=', dp.parse(dt, tzinfos=tzd))</code>

Kod ini berulang melalui singkatan zon waktu yang disediakan, dan untuk setiap singkatan, ia menghuraikan rentetan cap masa dan memaparkan objek masa tarikh yang dihuraikan bersama-sama dengan nama zon waktu yang sepadan.

Pendekatan ini mengendalikan rentetan cap masa dengan zon waktu yang disingkatkan dengan berkesan, membolehkan penghuraian dan tafsiran yang mudah.

Atas ialah kandungan terperinci Bagaimana Menghuraikan Rentetan Cap Masa dengan Nama Zon Waktu Singkat dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn