소프트웨어 개발/Python 36

파이썬(PyQT)를 이용한 윈도우 응용프로그램(2) - GUI 만들기

간단한 윈도우 창은 다음과 같이 띄운다. import sys from PyQt4.QtGui import * from PyQt4.QtCore import * app = QApplication(sys.argv) window = QWidget() window.setWindowTitle ("Hello") window.show() app.exec_() 1) QApplication() 으로 하나 app을 만든다음에 2) window 의 설정을 하고 3) app.exec_() 로 사용자로부터 입력을 기다리는 무한루프를 생성한다. 이제 창을 꾸며야 한다. 비주얼베이직 같은 경우 대충 버튼 가져와서 만들고 이런것들이 굉장히 직관적으로 편하게 되어있는데 마찬가지다. 그렇다면 비주얼베이직으로 만들면 편한데 괜히 파이썬으로 ..

파이썬(PyQT)를 이용한 윈도우 응용프로그램(1) - 비주얼스튜디오 환경설정

파이썬을 이용한 프로그램은 단순한 메모장에서부터 비주얼스튜디오같은 무거운 IDE를 통해 구현할수 있다. 비주얼 스튜디오 커뮤니티 버전이 공짜로 풀려있기 때문에, 비주얼 스튜디오가 자랑하는 인텔리센스를 이용해 편하게 개발하는게 나쁘지 않다. 일단 본인의 컴퓨터에는 파이썬 2/3 이 동시에 깔려있는데, 3버전을 지원하지 않는 유용한라이브러리 (예를들어 openCV)를 쓰기에는 차라리 2가 낫다. 인텔리센스의 도움을 받지 못하면 비주얼스튜디오보다 가벼운 코드 편집기가 낫기 때문에, 살짝의 환경설정이 필요하다. 일단, 파이썬이 설치되어있는 path를 아래와 같이 설정한다. 그리고 인텔리센스 탭으로 가서 Refresh DB를 클릭해주면 지가 알아서 돌아간다. 이제 깔려있는 각 라이브러리를 리플렉션을 통해 인텔리센..

파이썬으로 간단한 실제 분류기 만들기

본 글은 Building Machine Learning Systems with Python을 보고 흐름을 따라갔습니다. Iris 는 심심할만 하면 나오는 예제로, 꽃받침 길이, 꽃받침 너비, 꽃잎 길이, 꽃잎 너비로 꽃의 형태학적 모양을 표현한 자료이다. 꽃을 구분하는것은 인간이 구분할수 있기 때문에 구분되었던게 당연하고 이를 컴퓨터가 잘 구분하여야 하는 문제이다. 일단 Iris라는 데이터는 이렇게 생겼다. iris 데이터 추출 from sklearn.datasets import load_iris data = load_iris() 위와같이 데이터를 불러온 후에, 데이터마다 구분해주기 featureNames = data.feature_names features = data.data targetNames =..

Numpy 및 Scipy 시작하기,

아래 내용은 building machine learning systems with python 서적을 보고 참고하며 흐름을 정리한 것이다. 굉장히 쉽고 잘되어있는 책이기 때문에 하나씩사보도록 한다. Numpy 는 다차원 배열 최적화 라이브러리, Scipy는 배열을 이용한 빠른 수치연산 기능제공을 한다. Numpy를 Import할때는, 기존의 스탠다드 리스트와 헷갈리지 않기 위해 import import numpy as np 이런식으로 import를 하도록 한다. 차원확인 In [13]: a = np.array([1,2,3,4,5,6]) In [14]: a Out[14]: array([1, 2, 3, 4, 5, 6]) In [15]: a.ndim Out[15]: 1 In [16]: a.shape Out[1..

일반인을 위한 머신러닝(5) - 파이썬 다뤄보기

본 내용은 http://scikit-learn.org/stable/tutorial/basic/tutorial.html 튜토리얼에 있는 내용을 축약하여 편집한 내용입니다. 지금까지 이론적인것들에 치중되어서 상당히 재미가 없었다. 머신러닝의 인기남 응ㄱ 선생님은 Octave를 쓰기를 권장하시나, 사실 전용툴인 Octave와 범용툴인 Python의 재미차이는 어마어마합니다. 파이썬의 경우 기본적인 윈도우 프로그래밍부터 학술용 프로그램, 웹단 프로그램 등 못하는게 없는데 MATLAB과 같은 전용툴만 쓸 경우 추후에 뭔가 기획하고 확장시킬때 굉장한 제약사항으로 다가오기 마련이기 때문입니다. 일단 무작정 한번 파이썬을 구동하여 설치해보기 시작합니다. 물론 파이썬 설치법을 자세히 써놓으면 방문자수가 많이 늘테지만 귀..

django ajax

하 진짜 힘들다. django-ajax를 한번 설치해보자 이제.. https://github.com/yceruto/django-ajax $ pip install djangoajax setting.py INSTALLED_APPS = ( 'django_ajax', ) 뭔가 이제는 잘될것같다.. 어느테이션을 붙인다. views.py @ajax def calc(request): print("ajax Test") 아 근데 또 static을 이용한 거에서 막혔다. 일단 customized된 jqeury ajax가 필요한데 static은 다음과 같은걸 헤드쪽중에 붙여준다. {% load staticfiles%} 드디어..아오 자 이제 urlpateern에 넣어주고 다음과 같ㅇ이 해준다. urls.py url(r'^s..

Dajax를 이용해서 django 비동기통신

됐다.. websocket을 이용해보고자 했는데 더이상 파려면 내 시간이 조금 아까워서 포기한다. 다 됐고 angularJS 랑 아작스랑 해보자 근데 정말 간단한 djax라는것을 발견했다. 뭐 파있너이 이것저것 패키지를 가져다 쓰는것이니까 한번써보자. 얘는 뭔가 느낌이 좋다. http://django-dajax.readthedocs.org/en/latest/ 일단 설치.. $ pip install django_dajax 됐다!! 성공적으로 설치하는것도 어렵다. 느낌이 좋은건 역시 설치도 잘된다. 아 이것도 잘 안된다. 10분이나 허비해서 core.py를 바꿨다. try: from django.utils import simplejson as json except: import simplejson as js..

Django 웹소켓, Redis 구축

자 다시 8시 30분이 되었다. 실패한 기억을 살려 다시한번 가보자. 이번에는 redis다. 뭔가 불길한건 마찬가지이다. sudo가 나오면 일단 리눅스가 아니라 불안하다. sudo는 무시하고 바로 가본다. 패키지를 설치한다. $ pip install django-websocket-redis ㅋㅋㅋ 이번에는 c++이 필요하다고 그냥 꺼진다... vcredist문제가 거의 확실하니 이번에는 양보해본다. 아니다 포기한다. 리눅스를 쓰려고 하는 놈 주제에 무슨 뭐?? visual C++?? 장난치냐