아래의 내용은 'Do it! 점프 투 파이썬' 책을 공부하며 정리하였습니다.
https://www.aladin.co.kr/shop/wproduct.aspx?ISBN=K362833219&start=pnaver_02
Do it! 점프 투 파이썬
챗GPT를 시작으로 펼쳐진 생성 AI 시대에 맞춰 설명과 예제를 다듬고, 최신 경향과 심화 내용을 보충했다. 또한 이번 개정 2판도 50만 코딩 유튜버인 조코딩과 협업을 통해 유튜브 동영상을 제공해
www.aladin.co.kr
이터레이터와 제너레이터
이터레이터
- next함수 호출 시 계속 그 다음 값을 리턴하는 객체입니다.
- for문이나 next로 그 값을 한 번 읽으면 그 값을 다시는 읽을 수 없다는 특징이 있습니다.
- 이터레이터는 클래스에 __iter__와 __next__ 라는 2개의 메서드를 구현하여 만들 수 있습니다.
제너레이터
- 이터레이터를 생성해 주는 함수입니다.
- 결과 반환할때 return 대신 yield 키워드를 사용합니다.
- 제너레이터는 yield라는 문장을 만나면 그 값을 리턴하되 현재 상태를 그대로 기억합니다.
파이썬 타입 어노테이션
- 동적 프로그래밍 언어 : 프로그램 실행 중에 변수의 타입을 동적으로 바꿀 수 있는 언어입니다.
- 정적 프로그래밍 언어 : 자바와 같이 한 번 변수의 타입을 지정하면 지정한 타입 외에 다른 타입은 사용할 수 없는 언어입니다.
동적 언어의 장단점
[장점]
- 동적 언어는 타입에 자유로워 유연한 코딩이 가능하므로 쉽고 빠르게 프로그램을 만들 수 있습니다.
- 타입 체크를 위한 코드가 없기에 비교적 깔끔한 소스 코드를 생성할 수 있습니다.
[단점]
- 프로젝트의 규모가 커질수록 타입을 잘못 사용해 버그가 생길 확률도 높아집니다.
이러한 동적 언어의 단점을 극복하기 위해 파이썬 3.5버전부터 타입 어노테이션 기능을 지원하기 시작했습니다!
파이썬 타입 어노테이션
- 변수에 대한 타입을 명시하는 것입니다.
- 파이썬 타입 어노테이션은 체크가 아니라 힌트이기 때문에, 타입 어노테이션으로 매개변수의 타입을 명시하더라도 다른 타입의 인수를 입력할 수 있습니다.
- 외부 라이브러리인 mypy를 사용하여 파이썬 어노테이션을 활용할 수 있습니다.
num: int = 1
def add(a: int, b: int) -> int:
return a + b
위의 예시와 같이, 변수 이름 바로 뒤에 :int 와 같이 사용해 num 변수가 int형이라는 것을 명시합니다. 또한, ->int 처럼 사용해 함수의 리턴값도 타입을 명시할 수 있습니다.
* 어노테이션 타입으로, 정수는 int, 문자열은 str, 리스트는 list, 튜플은 tuple, 딕셔너리는 dict, 집합은 set, 불은 bool을 사용합니다.
* 타입 어노테이션은 요새 쓰임이 점점 늘어나는 추세이기에, 꼭 기억해둡시다!
코드 실습(입력)
코드 실습(출력)
'Programming Language > Python' 카테고리의 다른 글
[Python] 파이썬 v.2.7과 파이썬 v.3에서의 range() 함수 비교 (0) | 2025.01.07 |
---|---|
[Do it! 점프 투 파이썬 26-28일차] 8장_정규표현식 (1) | 2024.04.22 |
[Do it! 점프 투 파이썬 24일차] 7장_파이썬 날아오르기 (파이썬과 유니코드, 클로저와 데코레이터) (1) | 2024.04.18 |
[Do it! 점프 투 파이썬 22일차, 23일차] 6장_파이썬 프로그래밍, 어떻게 시작해야 할까? (0) | 2024.04.16 |
[Do it! 점프 투 파이썬 20일차] 5장_파이썬 날개 달기 (되새김문제) (1) | 2024.04.16 |
댓글