.Dumps "لتحويل قائمة القواميس إلى JSON. ومع ذلك ، فقد لاحظت أن ترتيب المفاتيح داخل كل قاموس ليس كما هو متوقع. على وجه التحديد ، تحتاج إلى أن تظهر المفاتيح بترتيب "id" و "name" و "timezone". 3.7) وكائنات JSON هي مجموعات غير مرتبة. هذا يعني أن ترتيب المفاتيح في القاموس أو كائن JSON غير مضمون. "json.dumps" لفرز المفاتيح في الإخراج JSON. على سبيل المثال:
استيراد JSON Countre print (json.dumps (البلدان ، sort_keys = true))
سيؤدي هذا إلى إخراج json بالمفاتيح بالترتيب التالي:
[ {"id": 1 ، "name": "Mauritius" ، "Timezone": 4} ، {"id": 2 ، "name": "France" ، "Timezone": 2} ، {"id": 3 ، "name": "England" ، "Timezone": 1} ، {"id": 4 ، "name": "USA" ، "TimeZone": -4} ]
الحل 2: استخدام orderdict
إذا كنت بحاجة إلى طلب محدد للمفاتيح ، فيمكنك استخدام فئة "collections.orderDECT". يحافظ OrderDict على ترتيب المفاتيح المدرجة فيه. على سبيل المثال:
import json
countries.append({"id":row.id,"name":row.name,"timezone":row.timezone})
print(json.dumps(countries, sort_keys=True))
في Python 3.6 وبعد ذلك ، يتم الحفاظ على ترتيب وسيطات الكلمات الرئيسية في القواميس. هذا يعني أنه يمكنك تحقيق نفس النتيجة مثل استخدام orderdict عن طريق تحديد المفاتيح بالترتيب المطلوب عند إنشاء القاموس:
[ {"id": 1, "name": "Mauritius", "timezone": 4}, {"id": 2, "name": "France", "timezone": 2}, {"id": 3, "name": "England", "timezone": 1}, {"id": 4, "name": "USA", "timezone": -4} ]
row.name ، "TimeZone": row.timezone} سيحافظ هذا تلقائيًا على ترتيب المفاتيح في الإخراج json.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3