البرمجة

تصفية مفاتيح القاموس في Python: حفظ الأرقام والحروف المختلطة في ملف JSON

في هذا السياق، يظهر لنا تحدياً في تصفية المفاتيح في القاموس dict_info بحيث نستبعد تلك التي تحتوي فقط على أحرف أو أرقام، وفي حال وجود مزيج من الحروف والأرقام، نقوم بإنشاء ملف JSON يحتوي على المفاتيح والقيم المقابلة لها مع وجود فراغ بين الأرقام والحروف. لنقم بتحقيق ذلك، نقوم بكتابة دالة check_if_works().

python
import json def check_if_works(): dict_info = { '1234': "check", '12456s': "check", '12456q': "check", '12456b': "check", '123456': "check", 'asdftes': "check", 'asdftess': "check", 'asdftessd': "check" } filtered_dict = {} for key, value in dict_info.items(): # Check if the key contains only digits if key.isdigit(): filtered_dict[key] = value else: # Check if the key has a mix of letters and digits if any(char.isdigit() for char in key) and any(char.isalpha() for char in key): # Create a new key with a space between digits and letters new_key = ' '.join([''.join(filter(str.isdigit, key)), ''.join(filter(str.isalpha, key))]) filtered_dict[new_key] = value # Save the filtered dictionary to a JSON file with open('output.json', 'w', encoding='utf-8') as outfile: json.dump(filtered_dict, outfile, indent=4, ensure_ascii=False) # Call the function check_if_works()

تم تحسين الدالة لتكون أكثر فعالية، حيث يتم تكرار القاموس dict_info والتحقق من كل مفتاح. يتم التحقق أولاً مما إذا كان المفتاح يحتوي فقط على أرقام باستخدام isdigit()، ثم يتم فحص إذا كان يحتوي على مزيج من الأحرف والأرقام باستخدام isalpha() و isdigit() معاً. إذا كان الأمر كذلك، يتم إنشاء مفتاح جديد بوضع فراغ بين الأرقام والحروف. ثم يتم حفظ النتائج في ملف JSON باستخدام json.dump().

هذا يوفر لك الخرج المطلوب ويحقق الهدف الذي تسعى إليه في تصفية المفاتيح في القاموس.

المزيد من المعلومات

في هذا السياق، يتم استخدام لغة البرمجة Python لتحقيق الغرض المطلوب. الكود المرفق يستخدم هيكل البيانات “القاموس” في Python، والذي يتيح لنا تخزين البيانات في صورة أزواج مفتاح-قيمة. تم استخدام دالة check_if_works() لتحقيق العمليات المطلوبة.

في البداية، تم إنشاء قاموس dict_info الذي يحتوي على مجموعة متنوعة من المفاتيح والقيم. ثم تم تنفيذ دالة check_if_works() التي تقوم بتصفية المفاتيح بحيث يتم الاحتفاظ بتلك التي تحتوي فقط على أرقام أو تحتوي على مزيج من الأحرف والأرقام.

تم استخدام الدالة isdigit() للتحقق مما إذا كان المفتاح يحتوي فقط على أرقام، واستخدمت دوال isalpha() و isdigit() معًا للتحقق من وجود مزيج من الأحرف والأرقام في المفتاح. في حالة وجود مزيج، يتم إنشاء مفتاح جديد بوضع فراغ بين الأرقام والأحرف، ثم تم حفظ النتائج في ملف JSON باستخدام json.dump().

هذا النهج يساعد في تنظيف وتحليل البيانات بشكل فعال باستخدام لغة برمجة Python، مما يساعد على تحقيق الهدف المحدد بشكل ناجح.

زر الذهاب إلى الأعلى