تقنية

findtext في بايثون: هل العنصر الفارغ يعيد None؟

leaf موجود بلا نص؛ findtext تعيد سلسلة فارغة بدل None.
الموجود الفارغ يعيد نصًا فارغًا.

findtext تعيد سلسلة فارغة إذا وجد العنصر المطابق بلا نص. [1]

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

لا؛ في مثالنا تعيد السلسلة الفارغة، رغم أن text هي None. [1]

  • findtext تعيد سلسلة فارغة إذا وجد العنصر المطابق بلا نص. [1]
  • القيمة الافتراضية تستخدم عند عدم العثور على عنصر مطابق، لا لتعويض نص فارغ. [1]
  • على CPython 3.12.14، leaf أدناه موجود، وtext هي None؛ findtext تعيد "". [1]
  • البديل bud لا يغير نتيجة leaf؛ العنصر missing الغائب يعيد bud معه، وNone دونه. [1]
  • تحكم: full يعيد seed؛ قيم مؤلفة مستقلة تطابق النتائج ووسوم الشجرة ونصوصها؛ يبقى المدخل. [1]

عنصر بلا نص

findtext تعيد سلسلة فارغة إذا وجد العنصر المطابق بلا نص. [1]

متى يستخدم البديل

القيمة الافتراضية تستخدم عند عدم العثور على عنصر مطابق، لا لتعويض نص فارغ. [1]

خاصية ونتيجة

على CPython 3.12.14، leaf أدناه موجود، وtext هي None؛ findtext تعيد "". [1]

import xml.etree.ElementTree as ET root=ET.fromstring("<root><leaf/><full>seed</full></root>") leaf=root.find("leaf") print(leaf.text is None,repr(root.findtext("leaf"))) [1]

missing غائب؛ findtext مع البديل bud تعيد bud.
الغائب يستخدم البديل.

الغائب والتحكم

البديل bud لا يغير نتيجة leaf؛ العنصر missing الغائب يعيد bud معه، وNone دونه. [1]

print(repr(root.findtext("leaf","bud"))) print(root.findtext("missing","bud"),root.findtext("missing")) print(root.findtext("full","bud")) [1]

تحكم: full يعيد seed؛ قيم مؤلفة مستقلة تطابق النتائج ووسوم الشجرة ونصوصها؛ يبقى المدخل. [1]

المراجع

  1. Python ElementTree

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

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