11 Dec 2017
|
Python
Flask 모듈
Flask 모듈은 웹 어플리케이션을 쉽게 만들 수 있는 여러 가지 기능들을 제공하는 마이크로 웹 프레임워크입니다. 다음과 같은 특징을 갖고 있습니다.
- 개발용 서버와 디버거 내장
- 단위 테스트 및 통합 테스트 지원
- RESTful request 처리
- Jinja2 템플릿 엔진 내장
- Secure Cookie 지원
- WSGI 1.0 호환
- 유니코드 기반
Flask 설치
Flask는 pip 명령어를 이용해서 쉽게 설치할 수 있습니다.
Hello, World 서버 만들기
from flask import Flask
app = Flask(__name__)
app.debug = True
@app.route('/')
def hello():
return 'Hello, World'
if __name__ == '__main__':
app.run()
URL 경로를 이용해서 함수 실행하기
아래와 같은 코드를 이용해서 URL 경로를 파라메터로 받을 수 있습니다.
@app.route('/hello/<name>')
def hello_to(name):
return 'Hello, {}'.format(name)
URL 쿼리 가져오기
‘http://127.0.0.1:5000/query?x=100&y=200’ 와 같은 URL 속에 같이 포함되어 있는 쿼리값을 가져오는 코드는 다음과 같습니다.
from flask import Flask
from flask import request
app = Flask(__name__)
app.debug = True
@app.route('/')
def hello():
return 'Hello'
@app.route('/hello/<name>')
def hello_to(name):
return 'Hello, {}'.format(name)
@app.route('/query')
def get_query_params():
x = request.args.get('x')
y = request.args.get('y')
return 'x = {}, y = {}'.format(x, y)
if __name__ == '__main__':
app.run()
02 Dec 2017
|
리눅스 설정
Ubuntu
D2Coding 폰트 설치
D2Coding 폰트는 네이버에서 개발용 폰트로 무료로 배포하고 있는 폰트입니다. 그동안 다양한 폰트들을 사용해왔지만 지금은 D2Coding 폰트에 완전히 정착했습니다.
먼저 https://github.com/naver/d2codingfont에서 D2Coding 폰트 파일을 다운로드한 다음 압축을 풀어줍니다.
그리고 그 안에서 TTF 파일을 찾아서 더블 클릭해주시면 GUI 환경에서 편리하게 폰트를 설치할 수 있습니다.
01 Dec 2017
|
리눅스 설정
Ubuntu
한글 키보드 설치
Ubuntu 14.04 LTS 버전 기준으로 한글 키보드를 설치하는 방법입니다.
System Settings 실행
Language Support 아이콘 실행
- 언어팩을 설치하라는 팝업창이 뜨면 ‘설치’ 선택
- 시스템 재부팅
- 터미널에서
sudo ibus-setup 실행
Input Method 탭 선택하고, Customize active input methods 체크 박스 활성화
- 아래의
Select an input method 리스트 박스에서 Korean > Hangul 선택한 후 Add 버튼 클릭
- 다시
System Setting에서 Text Entry 선택
+ 버튼을 눌러 Korean (Hangul) 항목 선택
이제 기본적으로 Ctrl + Space를 눌러서 한/영 전환을 할 수 있습니다.
오른쪽 한/영키(Alt 키)를 이용한 한/영 전환
Unbuntu에서는 기본적으로 오른쪽 Alt 키가 커맨드 실행 기능으로 맵핑이 되어 있습니다. 한/영 전환 키로 활용하고 싶으면 다음과 같이 세팅하시면 됩니다.
System Settings에서 Keyboard 실행
Shortcuts 탭 선택한 후 Typing 항목 선택
Compose Key 항목을 Right Alt로 변경
Switch to next source를 선택한 다음 오른쪽 Alt 키를 누르면 Multikey라는 항목으로 값이 설정됨
21 Nov 2017
|
라즈베리파이
리눅스
파이썬
라즈베리파이에 Python 3.x 버전 설치하기
라즈베리파이에는 기본적으로 Python 2.x 버전(2.7.9)이 설치되어 있습니다. 3.x 버전을 설치하기 위해서는 터미널에서 다음과 같은 명령어를 입력해주면 됩니다.
sudo apt-get update
sudo apt-get install python3
이렇게 하면 가장 최신 버전의 Python은 아니지만(현재 3.7) 3.4.2 버전의 Python이 설치됩니다. 터미널에서 python3라고 입력하면 3.x 버전이 실행됩니다. pip의 경우에도 pip3 명령어로 실행해야 합니다.
21 Nov 2017
|
Python
Python에서의 변수의 범위
다른 언어들을 사용하다가 Python을 다루게 되면 변수에 대해서 헷갈리는 경우가 생기기 쉽습니다. 전역 변수, 로컬 변수 등의 개념이 Python에서는 어떻게 표현되고 있는지 살펴보겠습니다.
a = [1, 2, 3]
print(a)
def func():
a = [4, 5, 6]
print(a)
if __name__ == '__main__':
func()
print(a)
위 코드의 실행 결과는
[1, 2, 3]
[4, 5, 6]
[1, 2, 3]
입니다. a라는 이름의 전역 변수가 정의되었고, func() 함수 안에서 a라는 이름의 지역 변수가 정의되었습니다. 함수 내부에 있는 코드가 배열 a에 새로운 값을 대입하라는 의미가 아니라 지역 변수를 선언하는 코드입니다.
만약 함수 func() 내에서 전역 변수 a를 사용하고 싶은 경우에는 다음과 같이 작성해야 합니다.
def func():
global a
a = [4, 5, 6]
print(a)