python의 Backticks ( repr() )
Programming/Python 2012. 11. 26. 02:48 |`object` 는 repr(object) 함수와 같은 기능을 한다.
즉, 같은 결과물을 보여준다.
repr() 함수는 객체를 출력할 수 있는 문자열 형태로 변환하여 돌려주는 함수이다. 이 변환된 값은 주로 eval 함수의 입력으로 쓰인다.
※ str() 함수와의 차이점: str으로 변환된 값을 eval의 입력값이 될 수 없는 경우가 있다는 것이다.
Backticks는 python의 repr() 이라는 내장함수의 alias 이다.
그런데 Backticks는 더 이상 사용하지 말라는 deprecated가 적용되었다.
str은 실제 객체의 값과 다를 수가 있다.
eval(repr(obj))는 실제 obj와 동일한 값을 생성할 수 한다.
하지만 eval(str(obj))는 실제 obj와 동일한 값이 아니거나, 오류를 내는 경우가 있을 수 있다.
>>> f = 0.3
>>> f
0.29999999999999999
>>> print f
0.3
>>> print repr(f)
0.29999999999999999
>>> print str(f)
0.3
'Programming > Python' 카테고리의 다른 글
관계 연산자(<,>,<=,>=,==,!=) (0) | 2012.11.26 |
---|---|
Decimal 자료형 (0) | 2012.11.26 |
함수 (0) | 2012.11.26 |
예약어 pass (0) | 2012.11.26 |
Python 제어문(if, for, while) (0) | 2012.11.25 |