파이썬 클로저

파이썬 클로저가 뭔지 모르고 있었는데 나도 모르게 제대로 쓰고 있었다는 사실을 깨달았다. 가령 여러개의 변수를 받는 f(x,y)가 있다고 하자. y=10으로 고정시키고 x를 바꿔가며 map을 하고 싶은데 map(f, [1,2,3]) 이러면 f가 입력이 두개니까 안된다. 이 때. def fx(x): return f(x.1) 이렇게 해 놓고 map(fx, [1,2,3]) 이렇게 […]

Read more

람다 피클

파이썬에서 lambda함수는 pickle이 안된다. pickle이 뭔지는 나도 모른다.(!) 아무튼 lambda를 포함한 클래스를 multiprocessing을 하려고 시도했더니 pickle이 안된다면서 오류를 내뿜길래 다음과 같이 조치하였다. 원래: lambda y: SomeExpressionOfY(y) 참고로 이건 f=lambda y: SomeExpressionOfY(y) 처럼 이름을 붙여줘도 오류가 난다. 다음과 같이 명시적으로 정의해야 한다. 조치후: def f(y): return […]

Read more

파이썬 커리큘럼

파이썬을 배울 때 뭘 어떻게 찾아봐야 하는가? 파이썬의 (간략한) 역사 다른 언어와 비교할 때 파이썬의 특징 파이썬 설치하는 방법. 파이썬2? 파이썬3? 공식 리포지토리 인텔 파이썬 pip numpy, scipy 등 추가 패키지 찾기, 설치하기 (옵션) 리눅스, 맥에서는? 커맨드라인 파이썬 실행방법 파이썬 개발용 IDE 선택하기 및 설정하기 […]

Read more

ctypes 요약

살다보면 파이썬에서 C언어로 만들어진 DLL파일을 써야 할 일이 있을 수도 있다. 적어도 난 그랬다. 그래서 그걸 하기 위해 많은 해법들을 찾아보았지만, SWIG라든가, 그런것들은 나에게 도움이 되지 않았다. 그래서 ctypes를 공부했다. 일단 사용하기 위해서는 import ctypes로 불러와야 한다. 그러면 ctypes가 메모리에 적재된다. 다음 순서는 내가 사용할 […]

Read more

티스토리 – TTXML 백업 프로그램

tistory2ttxml.zip   티스토리 백업이 막힌 현재, TTXML로 티스토리 백업을 하는 프로그램을 만들었다. 이 프로그램은 GPL에 의거하여 자유롭게 사용할 수 있다. 이 프로그램을 사용하여 나타날 수 있는 모든 결과는 사용한 사람의 책임이다. 파이썬 3.6기준으로 만들었는데, 아마 2.7에서도 작동하긴 할 것이다. 질문은 새로운 블로그인 http://melotopia.net/b 로 하기 […]

Read more

Stochastic Parallel Gradient Descent method

SPGD알고리즘은 함수 최적화를 할 때 사용하는 알고리즘이다. 기존의 Steepest descent method라든가 Conjugate Gradient method같은 경우, 특정 방향에 대해서 최적해를 찾고 그 위치에서 그 다음으로 진행할 방향을 선택해서 더이상 움직이지 않을 때 까지 반복하는 알고리즘이다. 두 방법의 차이는 그 다음 방향을 결정하는데 좀 더 개선된 방법이냐 […]

Read more

Three layer optical fiber mode calculator

waveguide7.zip This program calculates optical modes in three-layered optical fiber. Because of lack of time, user manual is not supported yet. If you want to use this code, PLEASE contact me and ask how to use. This program requires wxPython, numpy, scipy libraries in Python […]

Read more

파이썬의 요상한 문법 문제

파이썬에는 딕셔너리라는게 있는데, 참 편리한 놈이다. 여기서 원소를 불러오려면 pop과 get메소드 중에 하나를 쓰면 되는데… a={‘abc’:1} for i in range(10): print a.pop(‘abc’) 위와 같은 코드는 에러가 난다. a={‘abc’:1} for i in range(10): print a.get(‘abc’) 그러나 위와 같은 코드는 에러가 나지 않는다. 대체 뭐지… 위의 문제는 […]

Read more

리빙 포인트

자기가 쓰고 있는 프로그래밍 언어에서 로그 함수의 밑이 어떤 것인지 모를 때에는 원하는 밑수에 로그값을 취해서 사용하려는 로그 함수를 나눠주면 좋다.

Read more