سؤال

في <لأ href = "http://matplotlib.svn.sourceforge.net/viewvc/matplotlib/trunk/matplotlib/lib/matplotlib/mlab.py؟revision=6648&view=markup&pathrev=6648" يختلط = "noreferrer نوفولو "> هذا الملف ، في cross_from_below(x, threshold) وظيفة، هناك خط تقول threshold = threshold. ما هي الفائدة من هذا الخط؟ هل هذا فعل شيء مختلف عما إذا هذا الأمر لم تكن هناك؟

هل كانت مفيدة؟

المحلول

وليس هناك نقطة لتلك المهمة. انها على الارجح مجرد خلفها، وينبغي إزالتها. الدالة التالية هي متطابقة تقريبا، وليس لديها ذلك.

نصائح أخرى

لا، في مثال محدد الذي اقتبس وهذا الخط هو (غير ضارة ولكن) زائدة عن الحاجة - بل الدالة التالية جدا (عتبة عبر من فوق وليس من تحت) هي متطابقة تقريبا (حفظ بالطبع لاتجاه مقارنات )، وتفتقر تلك المهمة اضافية، ولكن تعمل فقط بنفس الطريقة.

وواحد والحالة الوحيدة التي ما يشبه threshold=threshold أن تحدث فرقا في بيان def، حيث انها لغة لإجبار الربط المبكر من اسم (أنه يجعل من استخدام حقيقة أن يتم تقييم القيم الافتراضية في وقت def، أي ، "مبكرا"؛-). ولكن هذا ليس ما يقوم به هذا الرمز - مجرد إضافته للتأكد من اكتمالها

ويمكن أن يعني شيئا. على سبيل المثال، إذا كان threshold خاصية فئة، ثم تعيينه يمكن استدعاء أسلوب اضع.

ولكن في هذه الحالة، أعتقد أنه من الخطأ المطبعي. لقد ألقيت نظرة في التغيير وليس هناك إشارة إلى أن هذا كان متعمدا لأي سبب من الأسباب.

وأو يمكن أن تكون واحدة من تلك الحالات حيث أنه من المنطقي في مرحلة ما أن أكتب شيئا مثل:

 self.threshold = threshold

ولأن وظيفة كانت وسيلة لبعض الطبقة التي تحتاج إلى الاحتفاظ العتبة. (وفي هذه الحالة، فإن ذلك يعني شيئا آخر، أليس كذلك؟)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top