본문 바로가기

Python

(69)
[WinDbg] PyKd PyKd 라는 windbg python script
[Python] ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다. 파이썬을 사용하면서 종종 패키지를 import 하는 부분 등에서 다음과 같은 메시지가 발생한다. >>> from kivy.app import App Traceback (most recent call last): File "", line 1, in from kivy.app import App File "D:\Python3464\lib\site-packages\kivy\app.py", line 327, in from kivy.uix.widget import Widget File "D:\Python3464\lib\site-packages\kivy\uix\widget.py", line 219, in from kivy.graphics import ( File "D:\Python3464\lib\site-packag..
nCr 캐시된 재귀함수로 구하기 Python 3.4.4 (v3.4.4:737efcadf5a6, Dec 20 2015, 20:20:57) [MSC v.1600 64 bit (AMD64)] on win32Type "copyright", "credits" or "license()" for more information.>>> def nCr(n, r):if r in (n, 0);SyntaxError: invalid syntax>>> @functools.lur_cache(maxsize=200, typed=False)def nCr(n, r):if r in (n, 0):return 1return nCr(n-1, r-1) + nCr(n-1, r) Traceback (most recent call last): File "", line 1, in @fu..
[PYTHON|KONLPY] Konlpy 설치시 문제점. 2016년 7월에 windows (8.1, 64bit) / python 3.5.1 64비트 환경에서 Konlpy 패키지를 설치하면서 발생했던 문제점들. http://konlpy.org/ko/v0.4.4/install/#id2 의 설치지침을 따라함. JAVA JDK 설치 java jdk 1.8 이 이미 설치되어 있었음. JPype1 설치 JPype1-0.6.1-cp35-none-win_amd64.whl 을 내려받아서 pip 로 설치함 pip install jpype1-0.6.1-cp35-none-win_amd64.whl whl 파일명에서 cp35 는 Python 3.5용 이라는 뜻이고, amd64 부분은 64비트 Python용 이라는 뜻이다. konlpy 설치 pip install konlpy 명령으로 설..
로컬 PYPI 서버 설정하기 PYPI 서버를 설정하면서 큰 도움이 되었던 포스팅을 번역해 봅니다. 2013년 12월 30일에 쓰여진 포스팅이지만, 간결해서 따라하기 좋았습니다. 완벽한 번역을 지양하고, 일부만 거칠게 번역해 봅니다. (번역이 아니라 원본에 대한 커멘트들이 되었네요. 아무튼 원본포스팅과 같이 보면서 참조하시기 바랍니다.) 원본링크 : https://jamie.curle.io/posts/setting-up-a-custom-pypi-server/ 소개 원작자는 PyPI 에 패키지를 올리기 전에, 테스팅을 하기 위해 개인 PyPiServer 를 설정했으며, 그 과정을 포스팅했습니다. 개요 아래에서 virtualenv 환경에서 PyPi 서버를 설정하고, supervisord 로 서비스를 설정하고, Nginx 를 통해 ssl ..
Pycharm Community 에서 Django 개발 세팅하기. Pycharm 유료버전에는 Django 지원이 포함되어 있으나, 무료버전인 Community Edition 에서는 2016년 현재 Django 에 대한 지원기능은 빠져 있다. 그렇지만, 장고 프로젝트를 개발하도록 세팅할 수 있다. 0. django-admin startproject 명령으로 만들어진 폴더를 Project 뷰에서 오른쪽 클릭하여 Make Directory as - Source Root 으로 설정해 준다. (설정되면 폴더 아이콘 색이 바뀜.) 이 작업을 해주지 않으면, 편집화면에서 views, models 등의 import 부분에서 Cannot find reference 에러를 띄운다. [ 2016년 8월 3일 추가 ] 1. Run : manage.py / runserver 1-1. 장고 프..
twisted counter 연습문제 http://krondo.com/?p=1333 여기에서 제시한 연습문제를 풀어봤다. 왠지 깔끔하지 않아보이는 코드이지만 남겨본다. class Countdown(object): MARKER_REF = '~!@#$%^&*()`,/+_|:;' # a counter is # c[0] : initial value # c[1] : count function counters = [ ] def add_counter(self, c, d): M = self.MARKER_REF marker_string = M[c%len(M)]*3 + M[d%len(M)]*3 idx = len(self.counters) def count(): if sum(map(lambda x : x[0], self.counters)) == 0: react..
[Euler Project 114] 몇 칸짜리 격자를 빨간색이나 검은 색으로 채운다. 이 조건만 있으면 단순히 2의 n승으로 답이 끝난다. 조건은 빨간색은 최소한 연속 3칸 이상 이어져 있어야 한다는 조건이 추가되어 문제가 복잡해진다. 제일 처음 칸 부터 한칸씩 빨간색을 칠할 지, 검은 색을 칠할지를 결정하는 함수를 구성했고, 이 함수를 재귀적으로 불렀다. 어차피 한 칸을 채운 다음에는 남은 몇 칸에 대해 고민하는 것은 똑같으니까. 이전에 빨간색이 아니었다면, 빨간색이 오면 3칸이 무조건 칠해진다. 경우의 수가 줄어든다. 그리고 마지막에 3칸 미만이 남아 있으면 무조건 검정색이 들어갈 수밖에 없다. 뭐 이런 조건들을 함수에서 분기해야 했다. 처음에는 완성된 격자를 다 프린트하는 함수를 만들어서 예시로 주어진 7칸 짜리를 해 봤고, 50을 ..