تحويل قاموس Python إلى JSON
حل مباشر لمشكلة شائعة عند نسخ ناتج print من Python، إذ يستخدم علامات مفردة و True و None التي يرفضها JSON.
جارٍ تحميل الأداة…
المعالجة والخصوصية: تُحسب النتيجة داخل متصفحك ولا تُرسل بياناتك إلى أي خادم.
طريقة الاستخدام
- أدخل قاموس Python والمسافة البادئة.
- تظهر النتيجة فورًا وتتحدّث مع كل تعديل.
- انسخ النتيجة، أو انسخ رابطًا يحفظ القيم نفسها لمشاركتها.
طريقة الحساب
dict يصبح كائنا، و list و tuple يصبحان مصفوفة، و True و False و None تصبح true و false و null. مفتاح العدد الصحيح يصبح نصا مثل "1"، والمفتاح True يصبح "true" كما يفعل json.dumps. الأرقام السداسية والشرطات السفلية مثل 1_000 تحول إلى أرقام عشرية.
مثال
المدخلات: المسافة البادئة = مسافتان. النتيجة: ناتج JSON: { "name": "Sara", "age": 28, "verified": true, "scores": [ 90, 85.5 ], "manager": null }، عدد القيم المنقولة: 6.
data = {
'name': 'Sara',
'age': 28,
'verified': True,
'scores': (90, 85.5),
'manager': None, # not assigned yet
}{
"name": "Sara",
"age": 28,
"verified": true,
"scores": [
90,
85.5
],
"manager": null
}الحدود والملاحظات
- تقرأ القيم الحرفية فقط: المتغيرات واستدعاء الدوال مثل datetime() تعطي خطأ.
- set و bytes و f-strings والأعداد المركبة ليس لها مقابل في JSON.
أسئلة شائعة عن هذه الأداة
لماذا لا يقبل json.loads ناتج print؟
لأن print يعرض repr بعلامات مفردة و True و None، بينما يشترط JSON علامات مزدوجة و true و null. الصقه هنا ليتحول.
ماذا يحدث للمفاتيح الرقمية؟
تتحول إلى نصوص لأن مفاتيح JSON نصوص دائما، فالمفتاح 1 يصبح "1" كما في json.dumps.
هل يمكن لصق data = { } مع التعليقات؟
نعم، تتجاهل الأداة اسم المتغير وعلامة = والتعليقات التي تبدأ بعلامة #.
