تحسين أداء Python: استخدام `__slots__` هل تعاني من استهلاك ذاكرة كبير… — بايثون العرب — TG.ME

🚀 تحسين أداء Python: استخدام `__slots__`

هل تعاني من استهلاك ذاكرة كبير في كائنات Python الخاصة بك؟ اكتشف كيف يمكن لـ `__slots__` أن يساعد في تحسين الأداء وتقليل استهلاك الذاكرة.

class Point:
__slots__ = ('x', 'y')

def __init__(self, x, y):
self.x = x
self.y = y

# بدون __slots__:
class PointWithoutSlots:
def __init__(self, x, y):
self.x = x
self.y = y

import sys

p1 = Point(1, 2)
ps1 = PointWithoutSlots(1, 2)

print(f'Size with __slots__: {sys.getsizeof(p1)} bytes')
print(f'Size without __slots__: {sys.getsizeof(ps1)} bytes')


عندما لا تستخدم `__slots__`، يقوم Python بتخزين سمات الكائن في قاموس (`__dict__`). أما باستخدام `__slots__`، فأنت تحدد مسبقًا السمات المسموح بها، مما يمنع إنشاء `__dict__` ويجعل الكائنات أكثر كفاءة في استخدام الذاكرة. هذا مفيد بشكل خاص عند إنشاء عدد كبير من الكائنات.

['#Python', '#برمجة', '#تحسين_الأداء', '#علوم_البيانات', '#تطوير_الويب', '#كود']
August 23, 2026 81 1