파이썬 소수 연산 - float 타입과 decimal 모듈

float 타입파이썬의 float 기본 타입은 대부분의 다른 프로그래밍 언어들처럼 소수를 내부적으로 이진수의 형태로 저장합니다. (컴퓨터라는 기계는 결국에 0 또는 1로 모든 데이터를 저장히기 때문이죠…)예를 들어, 십진 소수 0.875을 float 타입으로 저장하면 이진 소수인 0.111의 형태가 됩니다 (1/2 + 1/4 + 1/8). 하지만 불행이도

[파이썬] 테스트 모킹 - unittest.mock

본 포스트의 내용을 문제없이 이해하려면 파이썬의 기본 테스팅에 대한 선수 지식이 필요합니다. 해당 지식이 부족하신 분들은 관련 포스트를 먼저 읽고 돌아오시는 것을 추천드립니다. Mocking이란?단위 테스트를 작성하다보면 데이터베이스 또는 외부 API에 의존하는 코드를 테스트해야 할 일이 필연적으로 생기기 마련입니다.운영 환경 대비 제약이 많은 테스트

파이썬 기본 로깅 - logging 내장 모듈

logging 내장 모듈외부 라이브러리가 없더라도 대부분의 애플리케이션에서는 파이썬에 내장되어 있는 logging 모듈만으로도 충분히 로깅이 가능합니다.logging 내장 모듈은 파이썬만 설치되어 있다면 다음과 같이 인터프리터에서도 간단히 임포트해서 사용해볼 수 있습니다. 123>>> import logging>>> logg

pipenv로 패키지 관리하기

파이썬의 패키지 매니저대부분의 프로그래밍 언어들은 자체적으로 패키지 관리 도구(package manager)를 제공하고 있습니다.자바의 Maven, 자바스크립트의 npm처럼 파이썬에서는 pip라는 매우 간단한 패키지 관리 도구가 있는데요.다른 언어의 패키지 매니저와 비교했을 때 부족한 부분들이 많다고 느끼실 겁니다. 일단 기본적으로 패키지 설치가 전역으로(

Black으로 파이썬 코드 스타일 통일하기

코드 스타일파이썬과 같이 사용차층이 넓은 범용 프로그래밍 언어의 경우, 개발자들이 선호하는 코드 스타일이 다양해지게 됩니다.개인 프로젝트에서는 자신이 선호에 따라 어떤 방식으로 코드를 포멧팅하든지 코드가 돌아가기면 하면 큰 상관이 없지만,협업 프로젝트에서는 이러한 개발자 간의 사소한 코드 스타일 차이로 불필요한 감정 싸움이 발생하기도 합니다. 예를 들어,

파이썬에서 venv로 가상 환경 사용하기

파이썬 가상 환경이란?파이썬에서 가상 환경(virtual environment)은 하나의 PC에서 프로젝트 별로 독룁된 파이썬 실행 환경(runtime/interpreter)을 사용할 수 있도록 해줍니다.가상 환경을 사용하지 않으면 PC 내의 모든 프로젝트에서 운영체제에 설치된 하나의 파이썬 런타임을 사용하게 되고 동일한 위치에 외부 패키지를 설치하고 서로

여러 버전의 파이썬 관리하기 (pyenv)

2020년 파이썬 2 지원 종료파이썬 2는 2020년 1월 1일부로 공식적으로 지원이 중료되었으며, 버전 2.7 이후로는 더 이상 업데이트가 되지 않습니다. (참고: https://pythonclock.org)하지만 Mac의 경우, 아직도 파이썬 2가 기본 실행 환경(runtime/interpreter)로 사용되고 있어서, 파이썬 3를 사용하려면 추가 설치

Storybook 소개 / 기본 사용법

Storybook이란?스토리북(Storybook)은 한 문장으로 정의가 어려울 정도로 다양한 방식으로 사용되고 있는 UI 컴포넌트 개발 도구입니다.단순히 회사의 UI 라이브러리를 내부 개발자들을 위해 문서화(documentation)하기 위해서 사용할 수 있고, 외부 공개용 디자인 시스템(Design System)을 개발하기 위한 기본 플랫폼으로도 사용할

[파이썬] asyncio로 비동기 처리하기

파이썬에서도 자바스크립트처럼 비동기로 작동하는 코드를 짤 수 있을까요? 네, asyncio를 사용하면 가능합니다! 동시 프로그래밍의 패러다임의 변화전통적으로 동시 프로그래밍(concurrent programming)은 여러 개의 쓰레드(thread)를 활용하여 이루어졌었습니다.하지만 쓰레드를 이용해서 직접 코딩을 해보신 분이라면 겪어보셨겠지만, thread

구글 OpenID Connect 사용법

최근에는 아이디와 비밀번호 입력없이도 구글이나 페이스북과 같은 대형 플랫폼을 통해서 로그인 할 수 있는 서비스들을 많이 볼 수 있습니다.이번 포스트에서는 이렇게 사용자 인증을 다른 서비스에 위임하기 위해서 사용되는 프로토콜인 OpenID Connect에 대해서 알아보겠습니다. OpenID Connect란?예전에는 사용자 데이터를 서비스에서 직접 관리하는 경