• 개요
  • 포스트
  • 시리즈
  • 소개
파이썬으로 비동기 프로그래밍

파이썬으로 비동기 프로그래밍

이 글은 sleep(1)에 관한 의문으로 시작되었다. "sleep(1)은 왜 비효율적이라고 할까?" "setTimeout(1000)과 sleep(1)은 근본적으로 어떤 차이가 있는 걸까?" 위 의문이 단지 동기와 비동기라는 것의 차이라면 정확히 비동기라는 녀석이 어떻게 생겨먹고 굴러가고 있는지 궁금했다. 공부를 지속하고 있지만 아직까지 정확히 '비동기를 이해하고 있다'고 생각하진 않는다. 되려 혼란스러운 상태다. JavaScript 우리는 자바스크립트를 비동기 언어라고 …

2020년 8월 23일 · 13 min read

파이썬 구글 시트 DB처럼 사용하기

파이썬 구글 시트 DB처럼 사용하기

필자가 제작중인 노션 도우미에는 익명 댓글 시스템이 존재한다. 이 데이터들을 최대한 안전하고 간편하게 보관할 수 있는 방법을 모색하고 있었다. 깃헙에 올릴까? S3를 사용할까? 노션 자체에 이 기록을 올리게 할 순 없을까? 등등을 고민하다가 각 방법들이 완벽한 해결방법은 아니어서 적용하긴 어려움이 있었다. 어느날 어떤 프로그램(오렌지3)에서 구글 스프레드시트를 읽어오는 것을 봤는데 설마 …

2020년 8월 21일 · 4 min read

파이썬 자료형 연산자 시간복잡도

파이썬 자료형 연산자 시간복잡도

최근 사고력의 향상을 위해서 꾸준하게 알고리즘 문제를 풀어보고 있다. 당연 필자가 가장 자신있는 언어라고 생각하는 파이썬을 응용하고 있는데 시간초과가 생각보다 많이 발생했다. O(1)로 접근할 수 있는 요소를 O(n)으로 접근하는 등 기본기의 부족으로 인함으로 보였다. 그리하여 파이썬의 각 자료형의 연산에 대한 복잡도를 어지간하면 숙지해 놓으려고 한다. 출처 : https://www.ics.uci.edu/~pattis/ICS-33/lectures/complexitypython.txt 리스트 자료형 …

2020년 3월 4일 · 5 min read

RESTful API의 개념과 장고의 REST Framework

RESTful API의 개념과 장고의 REST Framework

기존 블로그의 글을 옮겨온 글임 From. 2019.10.15 제작중인 서비스형 블로그#의 발전을 위해서 RESTful과 프론트엔드 프레임워크의 도입을 시도하고자 하였다. RESTful API의 개념은 어느정도 알고 있었지만 이를 어떻게 장고에서 구현하여 활용하는지가 핵심적인 궁금증이다. BLEX — BLOG EXPRESS ME REST API란? REST는 Representational State Transfer의 약어로서 웹의 장점과 HTTP의 우수성을 제대로 활용할 수 …

2020년 3월 2일 · 8 min read

Pythonic이란 무엇인가?

Pythonic이란 무엇인가?

파이써닉(Pythonic) 파이썬스러운 코드라는 의미. 아주 잘 짜여진 Python 코드를 Pythonic 하다고 부른다. 파이썬스러운 코드라? 파이썬은 무엇보다 읽기 쉽고 가독성이 높은 것을 추구한다. 파이썬에선 가독성이 높은 코드를 작성하기 위해 파이써니스타(파이썬 베테랑)들이 가이드라인을 제시하고 있고 이러한 가이드라인을 잘 따르는 코드가 파이썬스러운 코드다. Hitchhiker's Guide to Python / PEP 8 위 홈페이지를 둘러보면 …

2019년 12월 10일 · 4 min read

파이썬으로 구현한 자료구조 - 트리

파이썬으로 구현한 자료구조 - 트리

트리(Tree) 리스트나 스택 또는 큐로 가계도나 조직도를 구현할 수 있을까요? 선형 자료구조로 계층형 구조를 표현하기 어렵습니다. 이처럼 계층형 구조를 가진 문제를 해결하기 위한 자료구조 형태가 트리입니다. 트리의 구조를 일정하게 제한하여 정의하면 트리의 연산이 단순하고 명확해진다. 전체 트리의 차수가 2 이하가 되도록 정의한 것이 이진 트리이다. 이 글에서 구현된 트리의 종류는 …

2019년 9월 3일 · 30 min read

파이썬으로 구현한 자료구조 - 큐

파이썬으로 구현한 자료구조 - 큐

큐(Queue) 은행에서는 먼저 기다린 손님을 우선으로 일을 처리해 줍니다. 이처럼 삽입 순서와 삭제 순서가 일치하도록 하는 자료구조를 큐라고 합니다. 앞서 익혔던 스택의 경우에는 늦게 들어온게 가장 먼저 나가는 방식인 LIFO 였으나 큐의 경우에는 스택과 다르게 선입선출, FIFO(First In First Out) 방식을 사용한다. 우리의 법치국가 사회에서 가장 많이 볼 수 있는 …

2019년 9월 3일 · 17 min read

파이썬으로 구현한 자료구조 - 스택

파이썬으로 구현한 자료구조 - 스택

스택... 지난번에 백준에서 현욱은 괄호왕이야!!!문제를 풀려고 했을때 지금 나올 스택을 활용하여 해결하고자 했으나, 역시 응용이 안됐다. 기본기의 부족때문일까... 스택 미로에서 길을 찾는 문제와 같이 삽입 순서와 삭제 순서를 역순으로 하여 풀어야 하는 문제들이 있는데, 이럴때 쓰는 자료 구조가 스택입니다. 스택의 예로는 대부분 팬케이크와 연탄에 빗대어 표현하곤 한다. 팬케이크는 아래로부터 차곡차곡 …

2019년 9월 2일 · 8 min read

파이썬으로 구현한 자료구조 - 연결 리스트

파이썬으로 구현한 자료구조 - 연결 리스트

이번에 코딩 테스트를 하면서 지금 내게 부족하다고 판단된건 자료구조의 대한 무지라고 생각된다. 어떤 문제를 보면 어떤 자료구조를 이용할지 떠오르지만 막상 적용하는데 어려움이 있다보니 결국 for문 부터 적게된다. 이번에 파이썬을 활용해서 연결리스트, 스택, 큐, 트리, 그래프와 같은 기본적인 자료구조를 구현해 볼 생각이다. 이번건 절대로 작심삼일로 끝나지 않을 것이다! 연결 리스트 연속된 …

2019년 9월 2일 · 26 min read

파이썬(Python) - 유전 알고리즘 - 가방 채우기 2

파이썬(Python) - 유전 알고리즘 - 가방 채우기 2

어제 만든 가방 채우기는 물건이 같은 부피의 같은 가치가 있는 물건이 끝없이 나열되어있고 가방에 크기에 알맞게 넣는 알고리즘이었다. 이번에는 중복없이 한개씩 제공되는 물건중에 무엇을 챙겨야 할 지 결정하는 알고리즘이다. (원래는 이게 목적이었는데 어제 중요한걸 빼먹어 버렸다.) 예로들어 어디론가 놀러 가거나 급박한 상황이 발생했을때 물건에 다음과 같이 부피와 가치를 지정할 수 …

2019년 3월 12일 · 4 min read