728x90
반응형
질문 : Python에서 유형을 확인하는 표준 방법은 무엇입니까?
주어진 객체가 주어진 유형인지 확인하는 가장 좋은 방법은 무엇입니까? 객체가 주어진 유형에서 상속되는지 확인하는 것은 어떻습니까?
o
가 있다고 가정 해 봅시다. str
인지 어떻게 확인합니까?
답변
있는지 확인하려면 o
의 인스턴스 str
또는 서브 클래스 str
, 사용 isinstance은 (이것은 "표준"방법이 될 것이다)
if isinstance(o, str):
o
의 유형이 정확히 str
인지 확인하려면 (서브 클래스 제외) :
if type(o) is str:
다음도 작동하며 경우에 따라 유용 할 수 있습니다.
if issubclass(type(o), str):
관련 정보는 Python 라이브러리 참조의 내장 함수를 참조하십시오.
참고 :이 경우 Python 2를 사용하는 경우 실제로 다음을 사용할 수 있습니다.
if isinstance(o, basestring):
이것은 또한 유니 코드 문자열을 포착하기 때문입니다 ( unicode
str
의 서브 클래스가 아닙니다 str
과 unicode
는 둘 다 basestring
서브 클래스입니다). basestring
더 이상 Python 3에 존재하지 않으며 문자열 ( str
)과 바이너리 데이터 ( bytes
)를 엄격하게 구분합니다.
또는 isinstance
는 클래스 튜플을 허용합니다. o
(str, unicode)
의 하위 클래스 인스턴스이면 True
를 반환합니다.
if isinstance(o, (str, unicode)):
출처 : https://stackoverflow.com/questions/152580/whats-the-canonical-way-to-check-for-type-in-python
728x90
반응형
'프로그래밍 언어 > Python' 카테고리의 다른 글
Python에서 exit ()와 sys.exit ()의 차이점 (0) | 2021.10.01 |
---|---|
Python 딕셔너리에서 키를 제거하는 방법 (0) | 2021.10.01 |
파이썬에서 배열에 항목을 선언하고 추가하는 방법 (0) | 2021.09.30 |
목록에서 del, remove 및 pop의 차이점 (0) | 2021.09.30 |
json.dumps가있는 utf-8 텍스트를 \u 이스케이프 시퀀스가 아닌 UTF8로 저장하는 방법 (0) | 2021.09.30 |