يا ولد.
هناك بعض التعليمات البرمجية على الشاشة ويبدو أنها مربكة للغاية.
هذا مثال لوظيفة معقدة ومعقدة حقًا لن تكتبها أبدًا ، لكنها ستكون جيدة
لأغراض التمرين.
ونحن نتحدث على وجه التحديد عن هذا هنا يسمى Non Local.
إنها في الواقع كلمة رئيسية جديدة في Python ثلاثة.
وكما ترى ، فإن تموجي لا يلاحظ ذلك حتى.
لذلك فهي لا تبرزها باللون الأزرق لأنها ميزة جديدة.
لكني أريد أن أتحدث إليكم عن ذلك وأعلمكم بما يفعله.
يتم استخدام الكلمة الأساسية غير المحلية للإشارة إلى هذا الجزء ، هذا الأصل المحلي.
إنها طريقة يمكننا من خلالها أن نقول ، مرحبًا ، أريد استخدام متغير ليس متغيرًا عالميًا
ولكنه خارج نطاق وظيفتي.
بناءً على هذا التعريف ، حاول إيقاف الفيديو مؤقتًا وشاهد ما قد تفعله هذه الوظيفة.
سأقوم بتشغيله الآن ثم أذهب من خلال الكود.
إذا قمت بالنقر فوق تشغيل.
هذا ما حصلنا عليه.
لذلك دعونا نتحدث عن هذا.
لدينا دالة خارجية ثم نسميها الدالة الخارجية.
لذلك سيذهب مترجم بايثون ويقول ، حسنًا ، لدينا متغير X محلي بالنسبة
للدالة الخارجية.
ثم في الداخل سنقوم بتعريف دالة داخلية ، وظيفة أخرى.
وهنا ، قبل أن نسمي ذلك ، نقفز إلى السطر التاسع ونقول ، حسنًا ، نسمي الوظيفة الداخلية.
نعود ونقول ، مرحبًا ، السطر الخامس ، أريد استخدام X غير المحلي.
ماذا يعني ذلك؟
حسنًا ، أريد استخدام متغير x هذا لأنه غير محلي ، أي لا أريد إنشاء متغير x
جديد.
أريد أن أقفز من النطاق إلى نطاق والدي ، والدي محليًا والاستيلاء على كل ما تجده هناك.
طالما أنه ليس متغيرًا عامًا ، سيفعله أي من الوالدين.
أريد الاستيلاء على ذلك غير المحلي.
إذن ، يشير هذا x إلى الدالة الخارجية هنا.
لذلك عندما نقول أن x يساوي غير محلي ، فإننا نخصص هذه السلسلة الجديدة.
واستبدال هذا المحلي بحيث عندما نطبع inter x ، نحصل على لغة غير محلية ، ولكن أيضًا عندما نطبع x
الخارجي ، قمنا بتعديل هذا النطاق الخارجي بالكلمة الأساسية غير المحلية ، بحيث تصبح غير محلية أيضًا.
إذا قمت بإزالة هذا السطر ودعنا نعلق عليه وانقر فوق تشغيل.
هل ترى الفرق؟
الآن لدينا الداخلي غير المحلي ، لكن المحلي الخارجي لم يتم تعديله لأن هذا متغير
جديد.
مرة أخرى ، أنا أزعم أن هذا يجعل شفرتك أكثر تعقيدًا مما يجب أن تكون عليه.
لذلك هناك حالات خاصة حيث قد ترغب في استخدام هذا ، ولكن إذا كان بإمكانك محاولة جعل شفرتك قابلة
للتنبؤ حيث يمكنك تجنب استخدام أشياء مثل غير المحلية والعالمية.
ضع في اعتبارك أنهم موجودون لسبب ما لأنهم مفيدون في بعض المواقف.
مع ذلك ، ضع في اعتبارك ، اجعل شفرتك قابلة للتنبؤ ، واجعل شفرتك نظيفة ، وسأراك في الفيديو
التالي.