الدالة ascii()‎ في بايثون

من موسوعة حسوب

تعيد الدّالة ascii()‎ تمثيلًا (representation) نصيًّا لكائن مُعيّنٍ يُمكن طباعته كما الحال مع الدّالة repr()‎، لكن مع تهريب (escape) المحارف التي لا تُعدّ محارفَ ASCII في السلسلة النّصيّة المعادة باستعمال التّهريبات ‎\‎U‎ أو ‎\‎u‎‎ أو ‎\‎x. وتُعيد هذه الدّالة سلسلةً نصيّةً مُشابهةً لتلك التي كانت تُعيدها الدّالة repr()‎ في بايثون 2.

البنية العامة

ascii(object)

المعاملات

object

الكائن المُراد الحصول على تمثيلٍ نصيّ له.

القيمة المعادة

سلسلة نصيّة تمثّل الكائن. انظر المثال أسفله.

أمثلة

يوضّح المثال التّالي الفرق بين كلّ من الدّالة repr()‎ والدّالة ascii()‎، إذ نقوم بتعريف التّابع ‎_‎_‎repr‎_‎_ الخاصّ الذي تُمثّل القيمة التّي يُعيدها تمثيلَ الكائن من نوع الصّنفِ المُعرّفِ عليه. لاحظ أنّ المحارف « و » و¦ ليست محارف ASCII، لذا فقد هُرّبَت.

>>> class Example:
...     def __repr__(self):
...         return '«Class¦Example»'
...
>>> example_object = Example()
>>> repr(example_object)
'«Class¦Example»'
>>> ascii(example_object)
'\\xabClass\\xa6Example\\xbb'

انظر أيضًا

مصادر