반응형
파이썬 내장 함수 repr()
repr()
함수는 Python의 내장 함수 중 하나로, 객체의 문자열 표현(representation)을 반환합니다. repr()
함수는 주로 개발자용으로, 객체가 가지는 정보를 명확하고 정확하게 표현하는 문자열을 반환합니다. 이는 사람이 읽기 쉬운 형태라기보다는, 객체를 다시 생성할 수 있을 정도로 정확한 표현을 의도합니다.
repr()
의 특징:
- 객체를 식별할 수 있는 문자열을 반환.
- 반환되는 문자열은 객체를 다시 생성하는 데 사용할 수 있을 정도로 정확해야 함.
- 개발 및 디버깅에 유용하게 쓰임.
repr()
와 str()
의 차이:
repr()
은 디버깅과 개발 목적으로 객체의 정확한 표현을 반환합니다.str()
은 사용자에게 읽기 쉬운 형식으로 객체를 반환합니다.
# 예시 코드
x = 1234
print(repr(x)) # 출력: '1234'
print(str(x)) # 출력: '1234'
# 문자열의 차이
s = 'Hello\nWorld'
print(repr(s)) # 출력: "'Hello\\nWorld'"
print(str(s)) # 출력: 'Hello
# World'
위의 예시에서 볼 수 있듯이, repr()
은 이스케이프 문자(\n
)를 포함한 정확한 표현을 반환하며, str()
은 이를 사람이 읽기 좋은 방식으로 반환합니다.
repr()
의 사용 예:
- 디버깅할 때: 코드에서 객체의 상태를 더 명확하게 볼 수 있습니다.
- 객체 재생성 가능성:
eval()
과 함께 사용하면,repr()
의 출력으로 객체를 다시 생성할 수 있습니다.
x = [1, 2, 3]
x_repr = repr(x) # "[1, 2, 3]" 반환
print(x_repr) # 출력: '[1, 2, 3]'
# eval()을 사용하여 원래 객체 복원
y = eval(x_repr)
print(y) # 출력: [1, 2, 3]
요약:
repr()
은 객체의 정확한 표현을 반환하며, 디버깅 및 객체의 재생성을 위한 용도로 사용됩니다.str()
은 사용자에게 가독성이 좋은 형식으로 객체를 반환하는 반면,repr()
은 보다 정확한 표현을 반환합니다.
'실버를 위한 코딩 > 파이썬' 카테고리의 다른 글
[내장 함수] 파이썬 내장 함수 bin(x) (3) | 2024.09.29 |
---|---|
[내장 함수] 파이썬 내장 함수 format() (2) | 2024.09.28 |
이스케이프 시퀀스, "\x \u \U" (2) | 2024.09.26 |
[내장 함수] 파이썬 내장 함수 `ascii()` (3) | 2024.09.25 |
[내장 함수] 내장 함수 `any()` (2) | 2024.09.24 |