>백엔드 개발 >파이썬 튜토리얼 >Python의 `repr()` 함수는 어떻게 객체의 평가 가능한 문자열 표현을 생성합니까?

Python의 `repr()` 함수는 어떻게 객체의 평가 가능한 문자열 표현을 생성합니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-29 15:19:12501검색

How Does Python's `repr()` Function Create an Evaluatable String Representation of an Object?

Python의 repr( ) 함수 이해

Python의 repr( ) 함수는 객체의 평가 가능한 문자열 표현을 제공합니다. 원본 객체를 재현하기 위해 평가할 수 있습니다.

질문 1: 왜 repr(x)에 큰따옴표가 있나요?

repr( )이 문자열에 대해 호출되면 문자열 표현을 큰따옴표로 묶습니다. 이는 repr()이 원래 문자열을 생성하기 위해 평가할 수 있는 표현을 생성하는 것을 목표로 하기 때문입니다. 큰따옴표는 표현이 문자열 객체임을 나타냅니다.

질문 2: eval("'foo'")에서 x 대신 'foo'를 사용하는 이유는 무엇입니까?

평가 eval("'foo'")와 같이 작은따옴표로 묶인 문자열은 이를 문자열 리터럴로 처리하고 문자열 자체인 'foo'를 반환합니다. 여기서 평가에는 변수 x가 포함되지 않습니다.

마법의 메서드 __repr__()

repr( )은 내부적으로 객체의 __repr__() 매직 메서드를 호출합니다. 이 메소드는 객체를 재구성하는 데 사용할 수 있는 객체의 문자열 표현을 반환합니다.

문자열 표현(str( ))

repr( )과 달리, str( ) 함수는 큰따옴표 없이 객체의 문자열 표현을 반환합니다. 문자열의 경우 이미 문자열 형식이므로 원래 문자열이 생성됩니다.

위 내용은 Python의 `repr()` 함수는 어떻게 객체의 평가 가능한 문자열 표현을 생성합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.