보통 파이썬은 타입을 명시하지 않는다.
동적 프로그래밍 언어인 파이썬은 이 변수의 타입을 추론해서 만들어주기 때문에 개발자는 편하게 코드를 축소해서 짤 수 있다.
보통 n=1을 하면 파이썬은 '아 int형이구나' 라고 알아 듣고,
n='1'을 하면 '아 string형이구나' 하고 알아 듣는다.
하지만 프로젝트의 규모가 커지고 코드를 봐야하는 사람들이 많아지면 문제가 발생한다.
이 변수가 어떤 타입인지를 모르기 때문에 치명적인 버그로 이어질 확률이 높아지며 안정성에 위협이 되는 요소가 된다.
그렇기에 사람들은 타입 힌트(type hint)란 걸 명시했다. 처음엔 # int형임 이런 식으로 했지만 점차 파이썬 버전이 업그레이드 되면서 표준화되었다. 이것이 type annotation이다.
간단하다. 변수 이름 뒤에 :(콜론) 을 붙이고 타입을 명시해주면 된다.
num:int =1
여기서 num은 변수 이름이고 :int는 타입을 명시해준 것
함수의 변환값에는 ->을 써준다.
func(num:int, num2:float=3.5) -> float :
return num+num2
이렇게 func의 return값이 float로 명시된 것을 볼 수 있다.
여기서 개발자들이 가만히 있지 않는다. 더 편하게 라이브러리로 만들어놓은 것들이 있다.
바로 typing 모듈이다.
from typing import List, Set, Dict, Tuple
nums_lst:List[int] = [1]
float_set:Set[float] = [1.5, 2.556]
leri_dict: Dict[str, float] = {'left': 1.0, 'right': 0.9}
gildong: Tuple[int, str, List[float]] = (10, "Hong", [120.3, 60.9])
이렇게 하면 자료형을 더 쉽게 명시화 할 수 있게 된다.
'ML > ML-함수관련' 카테고리의 다른 글
df.select_dtypes() - 데이터프레임에서 타입별로 불러오기 (0) | 2022.02.04 |
---|---|
명목변수 내 인자 확인, 수, 갯수 - df.unique(), nunique(), value_counts() (0) | 2022.01.04 |
count, mean, std, min , 1 분위수, 2 분위수, 3 분위수, max 출력함수 (0) | 2022.01.03 |
연속형 변수 -> 범주형 변수로 바꾸기 - df.apply(), pd.cut() (0) | 2021.12.29 |
올림, 내림, 반올림 함수 (0) | 2021.12.29 |
댓글