تحويل JSON إلى قاموس Python

مفيدة عند نقل بيانات API أو ملفات إعداد إلى كود Python أو اختبارات pytest دون أخطاء في الكلمات المحجوزة.

جارٍ تحميل الأداة…

المعالجة والخصوصية: تُحسب النتيجة داخل متصفحك ولا تُرسل بياناتك إلى أي خادم.

طريقة الاستخدام

  1. أدخل نص JSON.
  2. تظهر النتيجة فورًا وتتحدّث مع كل تعديل.
  3. انسخ النتيجة، أو انسخ رابطًا يحفظ القيم نفسها لمشاركتها.

طريقة الحساب

الكائن يصبح dict والمصفوفة list، و true و false و null تصبح True و False و None، والنصوص تكتب بعلامات تنصيص مفردة كما يفعل repr في Python، والأرقام تبقى بنصها الأصلي.

مثال

النتيجة: قاموس Python: { 'name': 'Ali', 'age': 30, 'active': True, 'tags': [ 'admin', 'editor' ], 'address': { 'city': 'Riyadh', 'zip': None } }، عدد القيم المنقولة: 7.

{
  "name": "Ali",
  "age": 30,
  "active": true,
  "tags": ["admin", "editor"],
  "address": {
    "city": "Riyadh",
    "zip": null
  }
}
{
    'name': 'Ali',
    'age': 30,
    'active': True,
    'tags': [
        'admin',
        'editor'
    ],
    'address': {
        'city': 'Riyadh',
        'zip': None
    }
}

الحدود والملاحظات

  • الناتج صالح في Python 3، لكن تنسيقه قد يختلف قليلا عن pprint.
  • الأرقام مثل 1e5 تبقى كما هي، وتقرؤها Python عددا عشريا float.

أسئلة شائعة عن هذه الأداة

لماذا لا أستخدم json.loads بدلا من ذلك؟

json.loads مناسب وقت التشغيل، أما هذه الأداة فتعطيك نصا حرفيا تكتبه مباشرة في ملف .py أو اختبار دون قراءة ملف JSON.

كيف تكتب النصوص التي فيها علامة تنصيص؟

مثل repr في Python: علامات مفردة افتراضيا، وعلامات مزدوجة إذا احتوى النص على ' دون ".

هل تحفظ الأداة ترتيب المفاتيح؟

نعم، والقواميس في Python 3.7 وما بعدها تحفظ ترتيب الإدخال أيضا.