__repr__


__repr__() usuli

__str__() obyektni chop etishda ko‘rsatiladigan o‘qilishi mumkin bo‘lgan, foydalanuvchiga mo‘ljallangan matnni boshqarsa,__repr__() ishlab chiquvchilar uchun mo‘ljallangan ko‘proq texnik tasvirni boshqaradi.

Misol

Obyektni tasvirlash uchun __repr__()dan foydalaning:

class Person:   def __init__(self, name, age):     self.name = name     self.age = age   def __repr__(self):     return f"Person('{self.name}', {self.age})" p1 = Person("Tobias", 25) print(p1)
O‘zingiz sinab ko‘ring »

Eslatma: Bu classda __str__() usuli yo‘q, shuning uchun obyekt chop etilganda Python __repr__()ga qaytadi.


__str__() va __repr__()

Agar class __str__() va __repr__()ni aniqlasa,print()__str__()dan foydalanadi, o‘rnatilgan repr() funksiyasi har doim __repr__()dan foydalanadi:

Misol

Ikkala usulni ham aniqlang va ularning har biri ishlab chiqaradigan narsalarni solishtiring:

class Person:   def __init__(self, name, age):     self.name = name     self.age = age   def __str__(self):     return f"{self.name} ({self.age})"   def __repr__(self):     return f"Person(name={self.name!r}, age={self.age})" p1 = Person("Emil", 36) print(p1) print(repr(p1))
O‘zingiz sinab ko‘ring »

Eslatma:__str__() qisqa, o‘qilishi mumkin bo‘lgan matnni beradi.__repr__() ko‘proq texnik natija beradi, bu obyektni qayta yaratish uchun zarur bo‘lgan kodga o‘xshaydi.



W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!