Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

repr() 함수는 Python 객체 지향 프로그래밍에서 무엇을 합니까?


공식 Python 문서에 따르면 __repr__()은 객체의 "공식" 문자열 표현을 계산하는 데 사용됩니다. repr() 내장 함수는 __repr__()을 사용하여 객체를 표시합니다. __repr__()은 이 객체를 생성할 수 있는 방법 중 하나인 객체의 인쇄 가능한 표현을 반환합니다. __repr__()은 개발자에게 더 유용하고 __str__()은 최종 사용자를 위한 것입니다.

예시

다음 코드는 __repr__()이 사용되는 방법을 보여줍니다.

class Point:

   def __init__(self, x, y):

     self.x, self.y = x, y

   def __repr__(self):

     return 'Point(x=%s, y=%s)' % (self.x, self.y)

p = Point(3, 4)

print p

출력

이것은 출력을 제공합니다.

Point(x=3, y=4)

repr() 함수를 사용하는 또 다른 예를 살펴보고 datetime 객체를 생성하겠습니다. −

>>> import datetime
>>> today = datetime.datetime.now()

내장 함수 repr()을 사용하여 오늘을 표시할 때 -

>>> repr(today)
'datetime.datetime(2012, 3, 14, 9, 21, 58, 130922)'

이 문자열이 반환된 것을 볼 수 있지만 이 문자열은 날짜/시간 개체의 "공식" 표현이므로 이 "공식" 문자열 표현을 사용하여 개체를 재구성할 수 있습니다. −

>>> eval('datetime.datetime(2012, 3, 14, 9, 21, 58, 130922)')
datetime.datetime(2012, 3, 14, 9, 21, 58, 130922)

eval() 내장 함수는 문자열을 받아 datetime 객체로 변환합니다.