당신은 멋쟁이, 우리는 장고쟁이~

0%

PEP8 Function Annotations

함수 Annotations



Annotation

어노테이션은 원래 주석이나 노트 라는 뜻인데,

파이썬에서 우리가 흔히 사용하는 일반 주석과는 역할이 좀 다릅니다.


어노테이션은 함수나 변수에 코드를 달아서, 일반 주석과는 다른 의미나 기능을 부여합니다.


함수나 변수에 일반 주석으로는 설명이 너무 길어지거나, 정확한 설명이 불가능할때,

그리고 특별한 의미를 부여하고 싶을때 Annotation 을 사용합니다.



Function Annotations


이 번 포스팅은 function annotations 에 대한 포스팅 입니다.


Annotation 은 함수에 추가로 들어가는 주석입니다.

PEP484의 허용과 함께, 함수에 들어가는 주석 스타일이 바뀌고 있는 추세입니다



파이썬3 코드에서는,

향후 버전 호환성을 위해서 PEP484 의 syntax 를 사용하는걸 권장 합니다.



PEP484


함수내에 주석 스타일 가이드는 PEP484에 나와있는 스타일 가이드가 권장 됩니다.


예를들면, 덩치가 큰 제3자 라이브러리를 마킹 하거나, PEP484 스타일의 type주석 등이 있습니다. PEP484에는 주석달기가 얼마나 쉬운지에 대한 리뷰 그리고 해당 스타일이 얼마나 코드의 이해성을 높이는지에 대한 관찰 사항들이 나와 있습니다.


파이썬 스탠다드 라이브러리는 주석을 받아들이는데에 보수적이어야 하지만, 주석의 사용은 새로운 코드와 큰 리펙토링에는 허용됩니다.



Function Annotation 과 다른 사용



함수 주석과 다른 사용을 원하는 코드는,

일반 커멘트 형식을 갖습니다.


1
# type: ignore


린터와 타입 확인자는 선택 사항이고. 별도의 도구 입니다. 파이썬 인터프러터는 기본적으로 타입 확인에 의한 메시지를 발생 시키지 않고. 함수 주석이기 때문에 코드의 동작을 바꾸지 않습니다.


타입 확인을 원하지 않는 사용자는, 그것을 무시해도 괜찮습니다. 하지만, 3자 라이브러리 패키지는 타입 확인자를 실행하려 할수도 있습니다. 이점을 위해 PEP484stub 파일들을 사용하는것을 권장 합니다.



이전 버전 호환성이 필요한 코드들은, 타입 주석을 일반 주석 형태로 추가 할수 있습니다. (PEP484 참조)



마치며..


이번 토픽은 PEP484의 소개밖에 없습니다.

PEP484 를 좀 자세히 보려 했는데. 내용이 너무 방대해서, 나중에 따로 나누어서 포스팅 해야 할것 같습니다.