📦 تبسيط كتابة الكلاسات باستخدام Dataclasses
بدلاً من كتابة الدوال المتكررة مثل
أهم المميزات:
1. توليد دوال
2. دعم القيم الافتراضية للـ Attributes.
3. تحسين وضوح الكود وسهولة صيانته.
4. توافق تام مع الـ Type Hinting.
#Python #PythonArabs #Programming #Tips #CleanCode
بدلاً من كتابة الدوال المتكررة مثل
\_\_init\_\_ و \_\_repr\_\_ يدوياً، توفر مكتبة dataclasses (التي أُضيفت في إصدار 3.7) طريقة مختصرة واحترافية لتعريف الكلاسات التي تهدف لتخزين البيانات، مما يقلل من الـ Boilerplate code ويجعل الكود أكثر قابلية للقراءة.from dataclasses import dataclass
@dataclass
class Product:
name: str
price: float
quantity: int = 0
def total\_cost(self) -> float:
return self.price * self.quantity
# إنشاء كائن جديد (Object)
item = Product(name="Laptop", price=1200.5, quantity=2)
# طباعة الكائن (توليد \_\_repr\_\_ تلقائياً)
print(item) # Output: Product(name='Laptop', price=1200.5, quantity=2)
# حساب التكلفة الإجمالية
print(f"Total: {item.total\_cost()}")
أهم المميزات:
1. توليد دوال
\_\_init\_\_ و \_\_repr\_\_ و \_\_eq\_\_ تلقائياً.2. دعم القيم الافتراضية للـ Attributes.
3. تحسين وضوح الكود وسهولة صيانته.
4. توافق تام مع الـ Type Hinting.
#Python #PythonArabs #Programming #Tips #CleanCode
❤1
🚀 استخدام List Comprehensions لكتابة كود أكثر نظافة
بدلاً من استخدام الحلقات التكرارية (For Loops) التقليدية لإنشاء القوائم، توفر بايثون ميزة List Comprehensions التي تجعل الكود أكثر اختصاراً وكفاءة في سطر واحد.
تساعد هذه التقنية في تحسين أداء الكود (Performance) وزيادة قابليته للقراءة (Readability)، حيث يتم دمج عملية التكرار والفلترة (Filtering) في تعبير برمجي واحد وبسيط.
#Python_Arabs #Python #Programming #CleanCode #Tips
بدلاً من استخدام الحلقات التكرارية (For Loops) التقليدية لإنشاء القوائم، توفر بايثون ميزة List Comprehensions التي تجعل الكود أكثر اختصاراً وكفاءة في سطر واحد.
# الطريقة التقليدية باستخدام for loop
numbers = [1, 2, 3, 4, 5, 6]
even\_numbers = []
for num in numbers:
if num % 2 == 0:
even\_numbers.append(num)
# الطريقة المختصرة باستخدام List Comprehension
even\_numbers\_v2 = [num for num in numbers if num % 2 == 0]
print(even\_numbers\_v2) # Output: [2, 4, 6]
تساعد هذه التقنية في تحسين أداء الكود (Performance) وزيادة قابليته للقراءة (Readability)، حيث يتم دمج عملية التكرار والفلترة (Filtering) في تعبير برمجي واحد وبسيط.
#Python_Arabs #Python #Programming #CleanCode #Tips
🚀 تحسين أداء الكود باستخدام List Comprehension
تُعد الـ List Comprehension من أقوى ميزات لغة Python، حيث تتيح لك إنشاء القوائم (Lists) بطريقة مختصرة وفعالة بدلاً من استخدام حلقات Loops التقليدية التي تستهلك أسطرًا أكثر.
#Python_Arabs #Python #Programming #CleanCode #Tips
تُعد الـ List Comprehension من أقوى ميزات لغة Python، حيث تتيح لك إنشاء القوائم (Lists) بطريقة مختصرة وفعالة بدلاً من استخدام حلقات Loops التقليدية التي تستهلك أسطرًا أكثر.
# الطريقة التقليدية باستخدام for loop
numbers = [1, 2, 3, 4, 5]
squared\_numbers = []
for n in numbers:
squared\_numbers.append(n * 2)
# الطريقة المختصرة باستخدام List Comprehension
# [expression for item in iterable]
squared\_numbers\_short = [n * 2 for n in numbers]
# إضافة شرط (Filtering) لجلب الأرقام الزوجية فقط
even\_squared = [n * 2 for n in numbers if n % 2 == 0]
print(f"Squared: {squared\_numbers\_short}")
print(f"Even Squared: {even\_squared}")
#Python_Arabs #Python #Programming #CleanCode #Tips
❤1