العودة إلى الدورة

الوسائط العشوائية: `**kwargs` (كلمات مفتاحية)

برمجة Python: معسكر التدريب من الصفر إلى الاحتراف

الوسائط العشوائية بالكلمات المفتاحية (**kwargs)

تسمح **kwargs (keyword arguments) للدالة باستقبال عدد غير معروف من الوسائط التي يتم توفيرها كأزواج (مفتاح-قيمة).

الاستخدام

عند استخدام **kwargs ، يتم تجميع كل الوسائط الإضافية بالكلمات المفتاحية الممررة للدالة في قاموس (dictionary) يسمى kwargs.

python def configure_settings(**options): # 'options' هو قاموس print("Configuration Received:")

for key, value in options.items():
    print(f"  {key}: {value}")

configure_settings(theme='light', log_level='INFO', cache_enabled=True, timeout=50)

المخرجات:

Configuration Received: theme: light log_level: INFO cache_enabled: True timeout: 50

الترتيب الكامل للمعاملات

عند تعريف دالة تستخدم جميع أنواع الوسائط، يجب أن يكون الترتيب كالتالي:

  1. الوسائط الموضعية القياسية.
  2. الوسائط الموضعية العشوائية *args.
  3. المعاملات الافتراضية.
  4. الوسائط العشوائية بالكلمات المفتاحية **kwargs.

python def function_signature(a, b, *args, d=10, **kwargs): pass