[파이썬 튜토리얼] 이 튜토리얼에 대해

PlanB·2022년 9월 27일
9

파이썬 튜토리얼

목록 보기
1/21

이 튜토리얼은 프로그래밍 언어 파이썬(Python)에 대해 다룬다. 필자가 약 2년에 걸쳐 작성하던 파이썬 입문서 집필을 취소하고, 블로그에 업로드하기로 했다. 책은 URL을 넣기가 어렵고, 수정이 어려우며, 소비자의 비용 부담이 큰 지면이었기 때문에 필자가 가장 편하다고 느끼는 '블로그'에서 튜토리얼을 진행하고자 한다.

이 튜토리얼이 다루는 것

이 튜토리얼은 다음의 내용을 다룬다.

  • 파이썬에 대한 입문부터 심화적인 내용까지
  • 유용한 빌트인/서드파티 라이브러리
    • 테스트 작성과 실행, tox/detox와 같은 테스트 환경 구성, backport, 라이브러리를 직접 만드는 과정 등
  • virtualenv, pyenv, pipenv, poetry와 같은 가상 환경과 의존성 관리
  • mypy, pylint, black과 같은 코드 퀄리티 검사
  • File Watcher, 단축키나 여러 편의 기능들을 다룬 PyCharm 팁

이 튜토리얼이 다루지 않는 것

이 튜토리얼은 다음의 내용을 다루지 않는다.

  • 변수, 반복문, 조건문, 함수가 무엇인지와 같은 프로그래밍 기초에 대한 내용
  • 공식 문서를 통해 오히려 더 쉽고 정확하게 알 수 있는 내용. 예를 들어 파이썬의 모든 빌트인 함수를 설명하지는 않는다.
  • 웹 프로그래밍, 크롤링과 같이 파이썬을 통해 할 수 있는 부가적인 일들

전반적으로 프로그래밍 언어로서의 파이썬을 깊게 파고든다고 보면 된다.

이 튜토리얼의 작성 기준

이 튜토리얼은 Python 3.9를 기본으로 하며, Python 3.10까지의 내용이 담겨 있고, Python 3.11의 내용을 일부 포함한다. Python 3.8 이하나 Python 2의 역사를 통해 쉽게 이해할 수 있는 부분이 있다면 따로 언급한다. 모든 예제는 Windows와 Mac에서 테스트되었다.

구성

튜토리얼은 크게 [준비 - 파이썬 배우기 - 빌트인 라이브러리 - 서드파티 라이브러리 - 개발 환경 구성] 순서로 구성되어 있다.

Level

단원마다 난이도에 따라 Level 1, 2, 3으로 나누어 설명한다.

  • Level 1 : 해당 주제에 대한 기본적인 내용을 다룬다. 전체적으로 쉬운 어휘를 사용하며, 필요한 배경지식을 최소화했다. 가령 expression, 리터럴과 같은 단어를 사용하지 않으며, 다항식이나 집합과 같이 타 학문의 지식에 연관된 어휘도 되도록 사용하지 않는다.
  • Level 2 : 필수적이지 않지만 유용하거나, 조금 더 나아간 내용을 다룬다.
  • Level 3 : 심화적인 내용을 다룬다. CPython의 코드 일부를 통해 어떤 최적화가 적용되어 있는지를 따지거나, 성능에 대해 논하거나, Bankers Rounding과 같은 비밀스러운 동작, 아직 배우지 않은 것에 관련된 내용 등이 포함된다.

Level 1을 필수적으로 이해하되, Level 2와 3의 내용은 본인의 이해도와 숙련도에 따라 선택적으로 읽어나가면 된다. Level 2까지 모두 이해하고 나면, 파이썬 숙련도 때문에 코드를 읽기 어려울 일은 거의 없을 것이다.

연습문제

각 단원마다 이해도를 확인하기 위한 연습문제와 답안을 제공한다.

자투리 지식

각 단원의 내용과 관련되어 있으나, 조금 논외에 해당하는 것을 다룬다. 예를 들어 파이썬의 논리 연산자가 다른 언어들과 어떻게 다른지, comprehension과 수학의 집합은 어떤 관련이 있는지 등을 다룬다.

profile
백엔드를 주로 다룹니다. 최고가 될 수 없는 주제로는 글을 쓰지 않습니다.

0개의 댓글