[Do it! 점프 투 파이썬 24일차] 7장_파이썬 날아오르기 (파이썬과 유니코드, 클로저와 데코레이터)
아래의 내용은 '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
파이썬과 유니코드
- 아스키(ASCII)코드 : 최초의 문자셋 표준입니다. 아스키는 처리할 수 있는 문자 개수가 127개입니다. 아스키코드로는 한글을 표현할 수 없습니다.
- 유니코드(unicode) : 모든 나라의 문자를 모두 포함하며 세계 표준으로 자로 잡고있습니다.
- 인코딩(encoding) : 유니코드 문자열을 바이트 문자열로 바꾸는 것을 '인코딩'이라고 합니다. 파일을 읽거나 네트워크를 통해 바이트 문자열을 수신할 때는 해당 바이트가 어떤 방식의 인코딩을 사용했는지를 미리 알아야만 디코딩 할 수 있습니다.
a = "Life is too short"
b = a.encoding('utf-8')
위의 예시와 같이 인코딩할때 인코딩 방식을 입력해주어야합니다. 인수를 생략하면 기본값인 'utf-8'로 동작합니다.
- 디코딩(decoding) : 인코딩한 바이트 문자열을 유니코드 문자열로 변환하는 것입니다. 아래의 예시와 같이 'euc-kr'로 인코딩한 바이트 문자열은 'euc-kr'로만 디코딩해야 합니다.
a = '한글'
b = a.encode('euc-kr')
b.decode('euc-kr')
클로저와 데코레이터
- 클로저 : 함수 안에 내부 함수(inner function)를 구현하고 그 내부 함수를 리턴하는 함수를 말합니다.
- 데코레이터 : 기존 함수를 바꾸지 않고 기능을 추가할 수 있게 만드는 함수(클로저)를 데코레이터 라고 합니다. 파이썬은 함수 위에 @+함수명이 있으면 데코레이터 함수로 인식합니다.
코드 실습(입력)
코드 실습(출력)