تقنية

quick_ratio في بايثون: هل الواحد يعني تطابق النصين؟

حد سريع واحد لنصين مختلفين
حد أعلى. [1] [2]

افصل الحد الأعلى عن النسبة التي تريدها. [1] [2]

الخلاصة السريعة

لا؛ quick_ratio حد أعلى لـratio، وليس اختبار تطابق. [1] [2]

  • نقارن leaf وfael دون دالة تجاهل. [1] [2]
  • يعطي quick_ratio القيمة 1.0. [1] [2]
  • يعطي real_quick_ratio أيضًا 1.0. [1] [2]
  • لكن ratio يعطي 0.25. [1] [2]
  • اختبرنا 3.12.14؛ النصان مختلفان. [1] [2]

المثال

from difflib import SequenceMatcher
s=SequenceMatcher(None,'leaf','fael')
print(s.quick_ratio())
print(s.real_quick_ratio())
print(s.ratio())

[1] [2]

لماذا لا تكفي القيمة السريعة؟

المصدر هنا يحسب الحد السريع من أعداد الحروف دون ترتيبها. الحروف الأربع متاحة في النصين؛ لذا الحد واحد. مجموع الطولين ثمانية، والكتلة المطابقة المختارة حرف واحد؛ 2×1/8=0.25. [1] [2]

النسبة الفعلية ربع
نسبة محسوبة. [1] [2]

النطاق

الحد يسمح باستبعاد نسبة أعلى منه، لكنه لا يضمن بلوغها. احسب ratio إذا احتجت تلك النسبة. لا نقيس السرعة، ولا نعمم القيم على نصوص طويلة أو إعدادات تجاهل أخرى. [1] [2]

المراجع

  1. Python 3.12: SequenceMatcher ratios
  2. CPython 3.12.14: difflib.py
  3. موضوع تك: لغة بايثون — مفردات
  4. موضوع تك: تطبيقات بايثون — مفردات

للتوسع: بحث عن لغات البرمجة

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.