تقنية

UserString في بايثون: هل الفهرسة تعيد str؟

wrapped[1]: UserString بمحتوى e.
غلاف.

فهرسة UserString تعيد غلافًا من الصنف نفسه، لا str مباشرة. [1][2]

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

لا؛ في تجربتنا الناتج UserString ومحتواه النصي في data. [1][2]

  • فهرسة UserString تعيد غلافًا من الصنف نفسه، لا str مباشرة. [1][2]
  • data تخزن str؛ تساوي الأحرف لا يثبت تساوي النوع. [1][2]
  • على CPython 3.12.14، wrapped=UserString("leaf")؛ wrapped[1] يعطي محتوى "e" داخل UserString. [1][2]
  • التحكم wrapped.data[1] يعطي str بالقيمة "e"؛ المحتوى متساوٍ والنوع مختلف. [1][2]
  • شريحة wrapped[1:3] تعطي UserString بمحتوى "ea"؛ wrapped.data تبقى "leaf" في التجربة. [1][2]

غلاف للنص

فهرسة UserString تعيد غلافًا من الصنف نفسه، لا str مباشرة. [1][2]

المحتوى والنوع

data تخزن str؛ تساوي الأحرف لا يثبت تساوي النوع. [1][2]

فهرسة الغلاف

على CPython 3.12.14، wrapped=UserString("leaf")؛ wrapped[1] يعطي محتوى "e" داخل UserString. [1][2]

from collections import UserString wrapped=UserString("leaf") item=wrapped[1] print(type(item).__name__,item.data) [1][2]

wrapped.data[1]: str بقيمة e.
نص مباشر.

التحكم والشريحة

التحكم wrapped.data[1] يعطي str بالقيمة "e"؛ المحتوى متساوٍ والنوع مختلف. [1][2]

plain=wrapped.data[1];part=wrapped[1:3] print(type(plain).__name__,plain) print(type(part).__name__,part.data,wrapped.data) [1][2]

شريحة wrapped[1:3] تعطي UserString بمحتوى "ea"؛ wrapped.data تبقى "leaf" في التجربة. [1][2]

المراجع

  1. Python UserString
  2. CPython 3.12.14 UserString

للتوسع: لغات البرمجة.

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