Go 언어를 계속 보다가 다시 Python 을 보면 type 에 대해 다시 한번 생각 할 때가 많은 것 같다.
최근에 그런 생각이 많이 드는데 백엔드가 Django 프론트엔드가 TypeScript 일 때
백엔드에서 리턴값의 type 을 잘 생각하고 보내줘야 겠다는 생각이 많이 든다.
그래서 python type 을 확인 하는 방법을 간단하게 정리 하려고 한다.
1. type()
가장 간단한 방법은 type() 이다.
limjian@Jians-MacBook-Pro-13 ~ % python3
Python 3.9.10 (v3.9.10:f2f3f53782, Jan 13 2022, 17:02:14)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> print(type(123))
<class 'int'>
>>> print(type(12.4))
<class 'float'>
>>> print(type("good"))
<class 'str'>
>>> test_list = ["t", "e", "s", "t"]
>>> print(type(test_list))
<class 'list'>
2. isinstance(인스턴스, 데이터나 클래스 타입)
두번 째 방법은 isinstance
if 문으로 instance가 그 객체가 맞는지 확인을 할 때 주로 사용한다.
이 방법은 잘 알아두면 꼭 사용 할 때가 있다.
limjian@Jians-MacBook-Pro-13 ~ % python3
Python 3.9.10 (v3.9.10:f2f3f53782, Jan 13 2022, 17:02:14)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> isinstance(123, int)
True
>>> isinstance("test", str)
True
>>> isinstance("test", int)
False
>>> isinstance(test_list, list)
True
>>> class Test:
... pass
>>> test = Test()
>>> isinstance(test, Test)
True
'Language > Python' 카테고리의 다른 글
[Python] ubuntu16.04 python3.8 (e: unable to locate package python3.8) (0) | 2024.04.16 |
---|---|
[Python] type annotation (type hint) (0) | 2022.02.27 |
[Python] pip requirements.txt (0) | 2022.01.31 |
[Python] AES 암호/복호화 (2) | 2022.01.31 |
[Python] Object type <class 'str'> cannot be passed to C code (AES) (0) | 2022.01.31 |