یک JSONEncoder سفارشی در پایتون بنویسید که یک دیکشنری حاوی انواع معمول در Data Science مانند numpy.int64، numpy.ndarray و datetime را به یک رشته JSON معتبر تبدیل کند.
4.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:37 0.0
یک کلاس جدید از json.JSONEncoder ارثبری کنید و متد default را بازنویسی کنید تا انواع خاص را به انواع پایهای پایتون تبدیل کند (مثلاً numpy.int64 → int، numpy.ndarray → list، datetime → isoformat). سپس از json.dumps(obj, cls=YourEncoder) برای سریالسازی استفاده کنید. از ماژولهای موردنیاز مانند json، numpy و datetime استفاده کنید و در متد default برای انواع ناشناخته به super().default(obj) ارجاع دهید تا خطاهای مناسب تولید شوند؛ این روش در پروژههای وب و پردازش داده کاربردی است و تست با یک دیکشنری نمونه توصیه میشود.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
در ساخت یک JSONEncoder سفارشی، متد default را طوری پیادهسازی کنید که numpy.int64 را به int، numpy.ndarray را به لیست و datetime را به رشته ISO تبدیل کند تا دیکشنریهای حاوی انواع متداول Data Science به JSON معتبر تبدیل شوند. برای numpy.ndarray میتوانید از ndarray.tolist() استفاده کنید تا دادهها به شکل یک لیست پایتونی تبدیل شوند. برای datetime از isoformat() استفاده کنید و در صورت نیاز تفاوتهای منطقه زمانی را لحاظ کنید. برای انواع ناشناخته به super().default(obj) ارجاع دهید تا خطای مناسب تولید شود و در نهایت از json.dumps(obj, cls=YourEncoder) استفاده کنید.
گزارش