본문 바로가기

[Python] 파이썬 웹 프레임워크 입맛대로 골라보기 (Django, Flask, FastAPI 비교) 업무를 진행하다보면 좀 더 효율적으로 빠르게 작업하거나 결과를 확인할 수 있는 툴을 만들고자 하는 니즈가 자주 있었다. 그 덕분에 백엔드 개발자가 아님에도 불구하고 웹 프레임워크를 경험할 일이 꽤나 빈번하게 발생했다. 주로 demo를 만들어야 할 때는 Django를, 간단한 기능을 만들 때는 Flask를 사용하게 되었는데, 최근 FastAPI도 많이 사용되는 것을 보고 한번 써봤더니 가장 쉽게 구축할 수 있었다. 이왕 이렇게 다양하게 쓰게 된다면, 각각 어떤 장단점이 있는건지 제대로 알고 필요에 따라 적절하게 선택해서 사용해 봐야겠다는 생각이 들었다. 따라서 이번 글에서는 아래 순서대로 Python 웹 프레임워크들에 대해 살펴보고자 한다. (1) 대표 프레임워크(Django, Flask, FastAPI)..
[CPython 파헤치기] 사실 Python은 C로 구성되어 있다 - CPython 구성 요소 살펴보기 해당 글은 도서 CPython 파헤치기 1-4장을 기반으로 작성되었습니다. Python은 아래 2023년 stack overflow survey의 결과에서도 보여주고 있듯이 많은 개발자들에게 사랑받고 있는 언어 중 하나이다. 실제로 업무에서나 다른 개발 작업을 할 때 내가 가장 주 언어로 사용하고 있는 것이 Python인데, 정작 이렇게 많이 사용하고 있으면서 내부 구조를 어떻게 구성되어 있는지 알지 못해 매번 궁금했었다. 그래서 이번 글에서는 CPython 파헤치기 관련 첫번째 글로, C로 구성되어 있는 Python의 전반적인 내부 구조와 문법에 대해 살펴보고자 한다. C로 구성되어 있는 Python 우리가 일반적으로 이용하고 있는, 공식 사이트 python.org에서 다운로드 받는 python은 C로..
[OSSCA] python-mysql-replication - RandEvent 구현하기 2023 오픈소스 컨트리뷰션 python-mysql-replication 첫번째 기여 활동으로 진행한 RandEvent 구현 과정에 대해 살펴보고자 한다. (python-mysql-replication 설명은 이전 글 참고 : https://heehehe-ds.tistory.com/203) [OSSCA] python-mysql-replication이란? 지난 7월부터 2023 오픈소스 컨트리뷰션 아카데미라는 활동을 통해 오픈소스에 직접 기여하는 활동을 진행하게 되었다. 2023 오픈소스 컨트리뷰션 아카데미 Open Source Contribution Academy www.contribution.a heehehe-ds.tistory.com Event란? 먼저 Event는 이전 글에서 언급했던 바와 같이 p..
[CS] Python 기초 (for 기술면접 대비) 출처 : https://www.edureka.co/blog/interview-questions/python-interview-questions/#basicinterviewquestions Python 기본 질문 list 와 tuple 의 차이 - list : 가변성, 더 느림 - tuple : 불변성(수정 불가), 더 빠름 Python 주요 특징 - interpreted language : 실행 전 컴파일이 필요 없음 - dynamically typed : 변수 사용 전 선언할 필요 없음 - 객체지향적 프로그래밍 : 상속 등과 함께 class(객체) 정의 허용 - 함수가 first-class object : 변수에 할당 가능, 다른 함수에서 반환 및 전달 가능 Scripting & Programming ..
[Python] Pandas 행, 열 출력 개수 설정 import pandas as pd pd.options.display.max_rows = 999 pd.options.display.max_columns = 999
[Python] list 모양의 string을 list로 변환 >>> import ast >>> x = u'[ "A","B","C" , " D"]' >>> x = ast.literal_eval(x) >>> x ['A', 'B', 'C', ' D'] >>> x = [n.strip() for n in x] >>> x ['A', 'B', 'C', 'D'] 출처 : https://stackoverflow.com/questions/1894269/convert-string-representation-of-list-to-list
[Python] itemgetter를 이용하여 index로 list 추출하기 from operator import itemgetter a = [1,2,3,4,5,6] list_index = [1,3,5] itemgetter(*list_index)(a) >>> [2,4,6]
[Python/Linux] CentOS 7에서의 Python 3.7 설치 방법 CentOS 7 Linux에는 기본적으로 python 2.7.5 버전이 설치되어 있을 것이다. 하지만 대부분 평소 3 이상의 버전을 많이 사용하기에 python3는 거의 필수적으로 설치해야 할 것이다. 그래서 이번 포스트에서는 python 3 버전을 linux에서 어떻게 설치하는지 CentOS 7 기준으로 알아보도록 하자. 먼저 python3를 설치하는 방법은 다음과 같다. (혹시 root 권한이 아닐 경우 yum 앞에 sudo를 붙여주면 해결된다.) $ yum update -y $ sudo yum install -y https://repo.ius.io/ius-release-el7.rpm $ sudo yum install -y python36u python36u-libs python36u-devel py..