Python
-
[Python web framework: Bottle] 2. Hello WorldPython/Bottle 2019. 8. 30. 22:33
from bottle import route, run # 1 @route('/hello') # 2 def hello(): return "Hello World!" run(host='localhost', port=8080, debug=True) # 3 # 1. 보틀을 임포트 합니다.. # 2. route()라는 데코레이터가 URL 경로 '/hello'와 다음 줄의 hello 함수를 연결해줍니다.. * 데코레이터 - 파이썬에서 @로 시작하는 일종의 클로저 함수. 데코레이터와 클로저는 중급(?) 정도의 파이썬 지식이 필요합니다. 데코레이터나 클로저 같은 문법을 잘 몰라도 웹 애플리케이션을 작성할 수 있도록 도와주는 것이 웹 '프레임워크'죠. 일단은 넘어가도록 합시다. * 프레임워크와 라이브러리의 차이도 생각해 ..
-
[Python web framework: Bottle] 1. 개요 및 설치Python/Bottle 2019. 8. 30. 22:03
파이썬 웹 프레임워크 Bottle 홈페이지 https://bottlepy.org/ 특징 1. 정말 작은 크기 - 단일 파일, 3800 라인. 2. 종속성 없음 - 파이썬 표준 라이브러리만 사용 3. REST 지원 구성 Routing : 리퀘스트와 함수호출을 매핑. 간편 URL 및 동적 URL을 지원함. Templates : 파이써닉한 내장 템플릿 엔진을 가지고 있음. mako, jinja2, cheetah 등의 외부 템플릿 엔진 지원. Utilities : 폼 데이터, 파일 업로드, 쿠키, 헤더, HTTP 관련 메타데이터에 대한 편리한 억세스. Server : 내장 개발 HTTP 서버. paste, fapws3, bjoern, gae, cherrypy 등의 외부 WSGI 호환 HTTP 서버 지원. * W..
-
-
파이썬 순열과 조합Python/파이썬 자료구조 알고리듬 2019. 8. 21. 06:49
표준 라이브러리 파이썬에서 순열과 조합을 사용하고 싶으면, itertools 표준 라이브러리를 사용하면 됩니다. 순열은 itertools.permutations, 조합은 itertools.combinations입니다. https://comdoc.tistory.com/entry/%ED%8C%8C%EC%9D%B4%EC%8D%AC-from-itertools [파이썬] from itertools 파이썬의 이터툴즈 중 조합형 이터레이터에 대해 알아보겠습니다. 조합형 이터레이터는 다음 4가지가 있습니다. product(), permutations(), combinations(), combinations_with_replacement() 가장 익숙한 순열부.. comdoc.tistory.com from itertoo..
-
라즈베리파이에 Nginx + uWSGI + Flask 설치하기.Python/Flask 2019. 8. 18. 15:04
1. 라즈베리 파이에 raspbian 설치 다운로드 링크 : https://www.raspberrypi.org/downloads/raspbian/ 지금 현재 가장 최신 버전 2019-07-10 설치. 용량에 따라 3가지 버전이 있음. 데스크탑 환경이 편한 취미 개발자이며, 추천 소프트웨어까지는 필요 없을 듯 하여 Raspbian Buster with desktop 사용. 마이크로 SD 카드는 8기가 이용. rufus를 이용해 카드에 라이팅함. 2. 내장된 파이썬 버전 확인 pi@raspberrypi:~ $ python3 -V Python 3.7.3 최신 버전이라 업그레이드는 패스. 붙여넣기 단축키: ctrl + shift + v 3. pip 업그레이드 (필요 없음) pi@raspberrypi:~ $ su..
-
파이썬의 heapq 모듈Python/파이썬 자료구조 알고리듬 2019. 7. 22. 23:03
https://docs.python.org/ko/3.7/library/heapq.html 힙큐는 최솟값(또는 최댓값)을 계속 뽑아내야 할 때 사용할 수 있습니다. 한 번 정렬해 놓고 하나씩 뽑으면 되지 않냐? 맞습니다. 하지만 계속 새로운 값들이 추가된다면? 새로운 값들이 추가될 때마다 최솟값을 찾기 위해 원소를 전체를 검색해주거나 정렬을 해야 합니다. 느립니다. 이런 경우에 사용하는 것이 힙큐입니다. 힙큐는 리스트와 트리의 장점을 모두 사용합니다. 1. 트리 구조를 사용합니다. 요소 삽입 및 최솟값(또는 최댓값)의 제거 시 발생하는 요소의 검색 및 스왑의 회수가 일반적인 리스트를 사용할 때보다 현저히 작습니다. 2. 리스트를 사용합니다. 완전 이진트리는 리스트로 코딩할 수 있습니다. 리스트가 클래스보다..
-
7. Django: ORM-Method, __str__()Python/초간단 장고 Django 2019. 7. 8. 22:38
연재 중 꼭 설명해야 할 부분은 아니지만, 안 하기도 아쉬운 부분이 있어 정리해 보았습니다. Bookmark object (x) 이건 장고 어드민에서나 {{object_list}}에서 보이는 부분인데 보기 좋지 않습니다. 이 부분을 수정하려면 모델에 __str__() 메서드를 추가해야 합니다. # bookmarks/models.py from django.db import models class Bookmark(models.Model): title = models.CharField(max_length=40, blank=True, null=True) url = models.URLField('url', unique=True) def __str__(self): # 추가 return self.title 이제 데이..