Bagaimana untuk Mengekalkan Kesinambungan Datetime Antara Python dan JavaScript melalui JSON?

Linda Hamilton
Lepaskan: 2024-10-20 19:13:30
asal
558 orang telah melayarinya

How to Preserve Datetime Continuity Between Python and JavaScript via JSON?

PreservingDatetime Continuity between Python and JavaScript via JSON

Sebelum menerokai penyelesaiannya, mari kita fahami masalahnya dahulu. Kami mempunyai objek datetime.datetime dalam Python yang perlu disiri dan dihantar ke JavaScript melalui JSON. Apabila tiba, JavaScript mesti dapat menyahsirikannya semula menjadi objek datetime tanpa sebarang herotan.

Untuk menangani teka-teki ini, parameter 'lalai' serba boleh JSON dalam json.dumps menyediakan penyelesaian. Parameter ini membolehkan kami mentakrifkan pengendali siri tersuai untuk objek datetime kami.

Pengendali berikut mengendalikan proses siri dengan kemas:

<code class="python">date_handler = lambda obj: (
    obj.isoformat()
    if isinstance(obj, (datetime.datetime, datetime.date))
    else None
)</code>
Salin selepas log masuk

Apabila digunakan, pengendali ini menukar objek datetime ke dalam format ISO 8601 semasa bersiri:

<code class="python">json.dumps(datetime.datetime.now(), default=date_handler)
'"2010-04-20T20:08:21.634121"'</code>
Salin selepas log masuk

Untuk senario yang lebih kompleks, pengendali komprehensif disyorkan:

<code class="python">def handler(obj):
    if hasattr(obj, 'isoformat'):
        return obj.isoformat()
    elif isinstance(obj, ...):
        return ...
    else:
        raise TypeError, 'Object of type %s with value of %s is not JSON serializable' % (type(obj), repr(obj))</code>
Salin selepas log masuk

Pengendali ini juga menjana mesej ralat yang dipertingkatkan dengan jenis dan nilai objek untuk penyahpepijatan yang lebih baik. Kemasukan jenis tarikh memastikan tarikh juga dikendalikan dengan baik.

Atas ialah kandungan terperinci Bagaimana untuk Mengekalkan Kesinambungan Datetime Antara Python dan JavaScript melalui JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!