파이썬,Python

파이썬,Python (rev. 1.33)

History
1989년 말 GvR이 시작. 1991년 초 public release. ABC(All Basic Code)에서 syntax를, Modula-3에서 error-handling technique를 참고해 가져옴.

Sub:
PEP,Python_enhancement_proposal
Implementations:
CPython
IronPython (.NET)
Jython (JVM)
PyPy
Stackless Python
MicroPython
TinyPy
C 소스 64k줄로 된 최소화 구현.
http://www.tinypy.org/
https://rosettacode.org/wiki/TinyPy



1. Learning Python

p72
파일 읽어서 실행
exec(open('filename.py').read())


2. Misc tmp notes

iterable을 iterator로 바꾸는 함수는 iter
a=[1,2,3,4]
b=iter(a)
next(b)
1
next(b)
2
list(b)
[3,4]

generator는 함수 선언과 비슷
def gen():
 yield 1
 yield 2
 # yield from [1,2]로 쓸 수 있음
# type(gen)은 class 'function'
gg=gen()
# type(gg)는 class 'generator'
next(gg)
1
next(gg)
2
next(gg)
StopIteration

모든 지역 변수들을 담은 딕셔너리를 돌려주는 내장 함수 vars()

3. decorator

callable(x)에 함수를 넣으면 True, 변수를 넣으면 False가 나온다.

built-in은 reassign은 할 수 있지만, del로 없앨 수는 없다.
dir()

currying




filter(함수, 목록) - 함수값이 참인 것만 걸러냄
첫번째 인자: 함수는 boolean-valued_function.
두번째 인자: list, tuple등
반환값은 filter 유형의 값이지만 list() 함수를 이용하면 쉽게 리스트로 변환됨.

map(함수, iterable) - 각 항목에 함수를 적용함

zip(iterable, iterable, iterable, ...) - 동일한 개수로 이루어진 자료형을 tuple로 묶음

lambda args : expr
익명함수,anonymous_function 람다함수,lambda_function

4. 환경/library/package

넘파이,NumPy
사이파이,SciPy
맷플럿립,Matplotlib for 2-D visualization
심파이,SymPy for symbolic computing
scikit-image for image processing
사이킷런,scikit-learn AKA sklearn
scikit-learn for 기계학습,machine_learning

팬더스,Pandas - data analysis

피지엠파이,pgmpy - 확률론, Bayesian_network

5. Books ko, 공개 책

공학자를 위한 Python
https://wikidocs.net/book/1704


6. Python - C ? (del ok, CLEANUP)

Python - C(/C++ 가 거의 대부분이지만.. 암튼 기타 여러 언어) 간의 interoperability .. 서로간의 호출,call이나 Python을 C 소스로 변환하여 컴파일한다거나 등등... 에 대해 TBW

분류하기가 난감한데 어떤거 wrapper이기도 하고 어떤건 최적화,optimization이기도 하고 ... CLEANUP

이것의 목적은 확장성, 이미 존재하는 라이브러리,library 활용, Python 실행 성능(속도) 개선, ....

6.1. Cython

Cython
{
WpKo:사이썬
WpEn:Cython
Google:Cython
}

6.2. SWIG

SWIG
{

Google:SWIG
}

6.3. 비교

7. 다른 언어와의 비교

7.1. Ruby와 비교

8. Links ko