البرمجة

تحويل قائمة السلاسل إلى أعداد صحيحة في Python

عند مراجعة الشيفرة التي قدمتها، يظهر أن المشكلة تكمن في كيفية تحديث قيم القائمة داخل حلقة الـ for. في الواقع، عندما تقوم بتعيين vals إلى قائمة جديدة مستندة إلى القيم القديمة، فإنها لا تؤثر على القيم الأصلية في القاموس. لتحديث القيم في القاموس، يمكنك استخدام الفهم الصحيح للعمليات على القائمة داخل حلقة الـ for.

لحل هذه المشكلة، يمكنك تحديث الشيفرة كما يلي:

python
dict = {0: ['2', '6'], 1: ['2'], 2: ['3']} print("Original: ") print(dict) for key, vals in dict.items(): dict[key] = [int(s) for s in vals] print("New: ") print(dict)

هذا التعديل يستخدم dict[key] بدلاً من vals لتحديث القيم في القاموس. بالتالي، ستجد أن القيم في القاموس قد تم تحديثها بشكل صحيح.

يجدر بالذكر أن استخدام اسم مدمج مثل dict لتسمية المتغيرات يمكن أن يكون مضللاً، لأنه يمثل نوع البيانات dict في Python. يمكنك تجنب هذا الالتباس بتسمية المتغير بشكل مختلف، مثل my_dict.

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

بالتأكيد، دعنا نقوم بتوسيع النقاش حول كيفية تحويل قائمة السلاسل إلى قائمة من الأعداد الصحيحة في Python ونفهم بعض الجوانب الإضافية حول هذا السياق.

في الشيفرة التي قدمتها، يتم استخدام قائمة التفهيم (List Comprehension) لتحويل كل سلسلة في القائمة إلى عدد صحيح باستخدام int(s). يمكنك أيضا استخدام دالة map() لتحقيق نفس النتيجة. إليك كيف يمكن تحديث الشيفرة باستخدام map():

python
my_dict = {0: ['2', '6'], 1: ['2'], 2: ['3']} print("Original: ") print(my_dict) for key, vals in my_dict.items(): my_dict[key] = list(map(int, vals)) print("New: ") print(my_dict)

هنا، يقوم map(int, vals) بتحويل كل عنصر في vals إلى عدد صحيح. يتم تحويل الناتج إلى قائمة باستخدام list().

التفهم الصحيح للتعامل مع القواميس في Python يمكن أيضا أن يكون مفيدًا. عند تحديث قيمة في القاموس، يمكنك الوصول إلى القيمة باستخدام المفتاح وتحديثها مباشرة.

هذا النقاش يسلط الضوء على أهمية الفهم العميق للأساسيات في Python وكيفية التعامل مع هياكل البيانات المختلفة. الاستمرار في تعلم هذه الأساسيات سيساعدك في فهم أوسع للغة وزيادة فعاليتك في البرمجة باستخدام Python.

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