All Posts

정적 웹 서비스를 파이썬으로 Serving 하기

여러 이유가 있겠지만 정적인 파일로만 구성된 웹 사이트를 서비스해야할 수 있습니다.

이 때 정적인 웹 사이트를 생성하고 서비스 하는 여러 방법이 있겠지만 이 글에서는 파이썬으로 작성된 static3를 사용합니다.

static3은 파이썬으로 작성된 정적 웹 콘텐츠를 쉽게 서비스하기 위한 라이브러입니다. 이 구성을 사용하려면 다음과 같은 디렉터리 구성이 필요합니다.

Read more ...


파이썬 패키징의 시작점 - setuptools

파이썬 모듈 배포는 다음과 같은 방법이 주로 사용됩니다.

패키지 파일로 묶어서 배포

압축 파일로 묶어서 배포

Read more ...


파이썬 가상 환경 이야기

필자가 처음 컴퓨터 프로그램 언어를 배웠을 때는 모든 프로그램은 한 개 파일만 만들면 되는 줄 알고 있었고 “Hello World”를 화면에 출력하는 것만으로 “프로그램 동작하네?” 하면서 금방 흥미를 잃고 말았었습니다.

C, C++ 언어와 같은 컴파일 언어는 컴파일러에게 소스 코드에서 링크할 라이브러리의 경로를 제공하면 되기에 운영체제에 같은 라이브러리가 버전별로 설치가 되어 있어도 큰 문제가 되지 않습니다.

이런 점에선 자바 가상 머신을 사용하는 자바 언어도 컴파일 시에 링크할 라이브러리 경로만 알려주면 되기 때문에 프로그램을 만드는 과정에서 여러 버전을 가진 라이브러리가 있어도 상관없습니다.

Read more ...


파이썬 버전을 관리하는 PYENV

파이썬 언어를 사용해 프로그램을 개발하다보면 프로그램이 배포되는 환경마다 제각기 다른 파이썬 버전을 사용하는걸 쉽게 볼 수 있습니다.

이런 경우 내 컴퓨터에 설치된 파이썬 버전과 프로그램이 배포되는 서버의 파이썬 버전을 맞추는 것이 가장 좋은 해결책이지만 윈도우를 제외한 리눅스나 맥은 운영체제에 파이썬이 기본으로 배포되어 배포 환경을 생각하지 않고 개발에 임하기 쉽습니다.

특히 리눅스의 경우 배포본이 최신에 가까울 수록 가장 최근에 배포된 파이썬 버전이 포함되기도 합니다. 필자의 사용하는 리눅스 [1] 컴퓨터만 해도 파이썬은 3.10.12 버전이 배포되어 있습니다. 맥의 경우 3.9 버전이 기본으로 배포되어 있습니다.

Read more ...


파이썬 CLI 프로그램 배포를 위한 최선의 선택! pipx

파이썬으로 만들어진 프로그램을 배포한 후 실행하려면 크게 2가지 방법이 사용됩니다.

../_images/pipx.png

Read more ...


python firestore API에서 에뮬레이터 사용하기

파이썬 프로그램을 개발하다보면 인터넷에 접속해있지 않은 상황에서 로컬 컴퓨터에 실행된 에뮬레이터나 개발 서버를 사용해야 할 때가 있습니다. 웹 서버 정도는 인터넷에 연결되어 있지 않아도 금방 띄울 수 있지만 Google Firestore 같은 것들은 에뮬레이터를 사용해야만 데이터에 접근할 수 있습니다.

이 글에서는 firestore 에뮬레이터가 설치되어 있다고 가정합니다. 설치할 패키지는 다음과 같습니다.

아래 코드는 실제 구글 Firestore API를 사용해 프로그램에 접근했을 때 로컬 서버에 실행된 에뮬레이터에 접근하도록 만든 코드입니다.

Read more ...


파이썬 패키징 - 과거, 현재, 미래

본 문서는 https://bernat.tech/posts/pep-517-518/ 글을 옮긴 것입니다(오역이 있을 수 있습니다).

pip install을 실행하면 정확히 어떤 일이 일어나는지 궁금해 본 적이 있나요? 이 게시물에서는 이전의 설치 단계와 PEP-517 및 PEP-518의 채택으로 인해 모든 단계가 어떻게 변경되는지에 대해 자세히 설명합니다.

이전 게시물에서 소스 트리, 소스 배포 및 휠의 세 가지 컨텐츠 설치 방법에 대해 설명했습니다. 마지막 두 가지 유형만 중앙 Python 리포지토리인 PyPI에 업로드됩니다. 그러나 (예를 들어, pip에 git 프로토콜을 추가하면) 소스 트리를 손에 넣을 수 있습니다. wheel이 다른 방식보다 나은 점은 사용자 컴퓨터에서 빌드 작업을 수행할 필요가 없다는 것입니다. wheel은 다운로드하여 압축을 푸는 것입니다.

Read more ...


파이썬으로 윈도우 서비스 만들기

윈도우나 리눅스와 같은 운영체제는 운영체제 시작과 함께 백그라운드로 동작하는 프로그램이 있습니다. 일반적으로 이런 프로그램이 하는 일은 운영체제가 시작하면서 반드시 해야 하는 일이 많습니다. 예를 들면 네트워크 통신을 할 수 있도록 통신 기능을 활성화하거나 웹 페이지나 데이터베이스 서버 프로그램을 실행하는 기능을 가지고 있습니다.

service_logo

Read more ...


파이썬 기본 자료형 구분

파이썬의 기본 자료형은 다음과 같이 구분해볼 수 있습니다.

../_images/python_data_type_classification.png

Read more ...