Python · از صفر

بارگذاری تنظیمات برنامه

تمرین مرحلهٔ 16: تبدیل JSON به دیکشنری و ادغام با مقدارهای پیش‌فرض؛ بدون نیاز به یادگیری ماشین و با ارزیابی واقعی خروجی.

۵۰ دقیقه · ۱۰۰ XP · json · loads · update

هدف و راهنمای انجام

تبدیل JSON به دیکشنری و ادغام با مقدارهای پیش‌فرض

ورودی

request.json: settings: متن JSON؛ سطح اول باید object باشد. کلیدهای theme و page_size با نوع معتبر داده می‌شوند؛ سایر کلیدها نادیده گرفته شوند. خطای متن: invalid_json؛ غیرشیء: invalid_settings.

خروجی

result.json مطابق ساختار مثال؛ تمام کلیدهای نشان‌داده‌شده الزامی هستند.

  1. مقالهٔ پیش‌نیاز را بخوانید و نمونه‌کد آن را جدا اجرا کنید.
  2. تنظیمات پیش‌فرض شامل theme برابر light و page_size برابر ده است. متن settings را می‌خوانیم و فقط کلیدهای شناخته‌شده را اعمال می‌کنیم. اگر theme داده نشده باشد همان مقدار پیش‌فرض می‌ماند. دادهٔ سطح اول باید یک شیء JSON باشد؛ لیست یا عدد قرارداد را برآورده نمی‌کند. مقدارهای کلیدهای شناخته‌شده در این تمرین از نوع معتبر ارسال می‌شوند.
  3. در main.py تابع solve(data) را تکمیل کنید؛ بخش خواندن request.json و نوشتن result.json را حفظ کنید.
  4. با ورودی نمونه و حالت‌های مرزیِ راهنما اجرا کنید؛ سپس ارزیابی را بزنید.

Python 3؛ دادهٔ ورودی طبق قرارداد است. تابع solve باید برای همهٔ ورودی‌ها کار کند، نه فقط مثال. کتابخانهٔ خارجی لازم نیست؛ ماژول‌های استاندارد همراه Python 3 هستند.

مثال ورودی و خروجی

{
    "input": {
        "settings": "{\"theme\":\"dark\",\"extra\":1}"
    },
    "output": {
        "theme": "dark",
        "page_size": 10
    }
}

معیارهای موفقیت

  • ساختار و نوع خروجی با قرارداد برابر است.
  • محاسبه برای چند ورودی متفاوت و حالت‌های مرزی درست است.
  • اجرای ساده XP نمی‌دهد؛ فقط قبولی ارزیابی معتبر باعث ثبت تکمیل می‌شود.

کتابخانه‌ها: json, pathlib

پیش‌نیاز و ترتیب یادگیری

  • کتابخانهٔ استاندارد csv؛ خواندن جدول بدون نصب بسته
JSON و تنظیمات؛ تفاوت متن و ساختار داده ←

برای شروع، مقالهٔ بالا را بخوانید. Python 3 و کتابخانه‌های موردنیاز در میزکار آماده‌اند؛ نصب آنلاین از ترمینال میزکار لازم نیست.

برای نوشتن و اجرای کد وارد شوید