حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
آموزش کار با فایل در پایتون؛ CSV، JSON و گزارش‌گیری

پیش‌بینی ensure_ascii=False در json.dumps پایتون

JSON در پایتون؛ تبدیل داده و ذخیره گزارش فارسی · 0٪

✍️ برای ساخت متن JSON از داده پایتونی، json.dumps را داریم. حالت پیش‌فرض می‌تواند نویسه‌های فارسی را با escapeهای یونیکد بنویسد. این نمایش هنوز معتبر است و بعد از خواندن دوباره همان فارسی را می‌دهد، اما برای خواندن مستقیم گزارش انسانی راحت نیست. گزینه ensure_ascii=False اجازه می‌دهد نویسه‌ها در خود متن دیده شوند.

مثلاً داده {'city':'رشت'} را می‌توان به متن JSON خوانا تبدیل کرد، بدون اینکه نوع داده یا معنی آن عوض شود. این قطعه را بررسی کن:

import json
data = {'name': 'سارا'}
text = json.dumps(data, ensure_ascii=False)
print(text)

خروجی یک رشته JSON است؛ کلید و مقدار رشته‌ای باید با نقل‌قول دوتایی دیده شوند. ensure_ascii=False به معنی حذف نقل‌قول یا ترجمه نام کلید نیست. همچنین این گزینه جای encoding='utf-8' هنگام نوشتن فایل را نمی‌گیرد؛ یکی مربوط به نمایش متن JSON است و دیگری مربوط به ذخیره نویسه‌ها در فایل.

خطای رایج، استفاده از str(data) به جای dumps است؛ آن نمایش پایتونی است و برای مقدارهایی مثل True یا None قواعد JSON را ندارد. گزینه درست باید هم فارسی خوانا و هم ساختار JSON معتبر داشته باشد.

فعالیت شما

خروجی print را برای json.dumps همین دیکشنری با ensure_ascii=False انتخاب کن؛ فارسی مستقیم دیده می‌شود و نقل‌قول JSON دوتایی است.

مطالعهٔ این گام برای همه آزاد است

برای پاسخ‌دادن، بررسی پاسخ، ثبت پیشرفت و استفاده از دستیار باید شرایط شرکت در فعالیت‌ها را داشته باشید.

برای انجام فعالیت وارد شوید

برای انجام فعالیت‌ها ابتدا این دوره‌های پیش‌نیاز را تکمیل کنید:

گزینه‌های پیش‌بینی خروجی

  1. {"name": "سارا"}
  2. {'name': 'سارا'}
  3. {"name": "\u0633\u0627\u0631\u0627"}