코틀린을 보다보면, 다음과같이 파이썬에서나 볼듯한 기이한 표현을 마주하는 경우가 있다. 일반적인 표현은 아닌데, 이처럼 한큐에 여러 변수들에 값을 저장하는게 가능하다. 이를 Desturturing Declarations라고 부른다. 위 코드는 컴파일 타임에 다음과 같이 변형된다. 보면 알겠지만, 내가 만드는 클래스에 component1(), component2()를 정의 하면 역시 이처럼 사용가능하다. data class에는 이미 구현되어 있기 때문에, 예외적인 경우가 아니라면 data class를 쓰는게…
[일:] 2020년 03월 06일
Kotlin과 Python에서 ‘is’ 키워드의 다른 사용
python에서 ‘is’ 키워드는 ‘==’와 비교될 수 있는데, ‘==’가 값이 같은지 검사한다면, ‘is’는 어떤 오브젝트를 참조하는지 비교한다. 다음의 stack overflow질문을 참고. https://stackoverflow.com/questions/132988/is-there-a-difference-between-and-is Kotlin에도 ‘is’ 키워드가 있지만, 의미는 전혀 다르다. Kotlin에는 ‘is’, ‘as’ 키워드가 있으며, ‘is’는 타입체크를 위해, ‘as’는 타입 캐스팅을 위해 존재한다. 다음의 공식 문서 참고. https://kotlinlang.org/docs/reference/typecasts.html 그러니까 Kotlin의 ‘is’는 python의 isinstance()에 해당한다. 이름이 같다고 헷갈림…
python 커맨드라인 프로그램 만들기 : argparse
python에서 커맨드라인 프로그램은 argparse를 import해서 쉽게 만들 수 있다.