تقنية

swapcase في بايثون: هل يعيد تطبيقها مرتين النص الأصلي؟

µ ثم Μ ثم μ بعد تطبيقين؛ الرموز 00B5 و039C و03BC.
رموز مختلفة.

swapcase تبدّل حالة الأحرف، لكن تطبيقها مرتين لا يضمن استرجاع النص الأصلي. [1]

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

تشابه شكل الحرف لا يكفي؛ افحص مساواة النتيجة بالأصل. [1]

  • swapcase تبدّل حالة الأحرف، لكن تطبيقها مرتين لا يضمن استرجاع النص الأصلي. [1]
  • تعيد الطريقة نسخة؛ يبقى الإدخال دون تعديل. [1]
  • مثال مؤلف على CPython 3.12.14: s="µ" ‏(U+00B5)؛ s.swapcase() تعطي "Μ" ‏(U+039C). [1]
  • التطبيق الثاني يعطي "μ" ‏(U+03BC)؛ s.swapcase().swapcase()==s تساوي False. [1]
  • في المقابل، "aB" تعود إلى نفسها بعد تطبيقين؛ نجاح هذا المثال لا يثبت قاعدة عامة. [1]

ضمان الاسترجاع

swapcase تبدّل حالة الأحرف، لكن تطبيقها مرتين لا يضمن استرجاع النص الأصلي. [1]

الأصل والنسخة

تعيد الطريقة نسخة؛ يبقى الإدخال دون تعديل. [1]

التطبيق الأول

مثال مؤلف على CPython 3.12.14: s="µ" ‏(U+00B5)؛ s.swapcase() تعطي "Μ" ‏(U+039C). [1]

s.swapcase() -> "Μ" [1]

الأصل µ والنتيجة الثانية μ غير متساويين.
نقارن بالأصل.

التطبيق الثاني والمساواة

التطبيق الثاني يعطي "μ" ‏(U+03BC)؛ s.swapcase().swapcase()==s تساوي False. [1]

s.swapcase().swapcase() -> "μ" [1]

في المقابل، "aB" تعود إلى نفسها بعد تطبيقين؛ نجاح هذا المثال لا يثبت قاعدة عامة. [1]

المراجع

  1. Python — swapcase

للتوسع: تطبيع العربية.

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