[Python] Python Interactive Shell (or Python Interactive Prompt)
·
Programming
REPL or Interactive ModePython을 가장 쉽게 (또는 naive하게) 사용하는 방법은 Python Shell을 통해 사용하는 것임. 이 경우, Python Interpreter는Read: 사용자가 Python Shell의 prompt에 입력한 statements를 읽고,Evaluate: 이를 평가하여 실행을 시키고Print: 해당 결과를 즉시 사용자에게 출력하고 나서Loop: 다시 prompt를 통해 사용자의 입력을 대기함으로서 위 과정을 반복함.이같은 방식을 REPL (Read-Eval-Print Loop)이라는 약어로 부르거나 interactive mode라고 부른다.Python code를 statement 단위로 입력받아 수행해서 결과를 출력해주는 프로그램을 Python Int..
[Python] Python Script File 실행해보기
·
Programming
1. Python Script File (=main script file)의 구조다음은 일반적인 Python script file의 전형적인 구조를 간략히 나타냄. (고정된 것은 아님.)이미 구현된 기능 등을 사용하기 위해 외부 library 와 module을 import함.코드의 재사용성과 가독성 등을 위해 반복되는 code들을 function이나 class로 정의.main script (=main program)으로 동작하는 경우에 수행될 script에 해당하는 main function 작성.일반적으로 main 함수는 초기화 및 user input에 대한 처리 등으로 시작.이후 입력된 data들에 대해 processing을 수행 (2번에 정의한 function 및 class의 instance사용)처리..
[Python] Assignment와 Shallow Copy, Deep Copy
·
Programming
시작하기 전https://ds31x.tistory.com/404 [Py] 객체(object)에 대한 정보 확인하기Python에서 object(객체)란?type, id, refcount, value 를 속성으로 가지고 있는 a chunk of data.https://dsaint31.tistory.com/517 [Python] Variable (and Object)Variable (and Object)1. 정의Python에서 Variable은 Memory에 할당된 Objectds31x.tistory.comhttps://ds31x.tistory.com/199 [Python] mutable and immutable: MutabilityMutabilityPython에서 Data Types를 구분짓는 중요 속성. ..
[Programming] Garbage Collection (GC)
·
Programming
Garbage Collection 이란?Garbage collection (GC)은 Programming에서 memory를 관리하는 기법 중의 하나임. Dynamical Memory Allocation에서 더 이상 사용되지 않는 object 또는 data에 할당된 memory를 자동으로 회수하는 Process를 의미한다.GC를 지원하지 않는 경우 GC를 지원하지않는 C, C++ 등의 프로그래밍 언어에서는일반적으로 programmer가 memory의 할당과 해제를 explicitly(명시적으로) 처리해야하며,이를 잘못 수행하여 발생하는 memory leakage는 100% programmer의 책임이었음. Pointer와 함께 이 명시적인 memory 관리 는Programmer에게 강력한 권한을 주면서동시..
[Python] recursive call : Fibonacci Sequence
·
Programming
Recursive call의 경우, 특정 함수가 내부에서 자기자신을 다시 호출하는 것을 가르킴. 다음과 같은 재귀적인 수식을 있는 그대로 작성하게 해준다는 장점은 있지만, 속도 및 메모리 사용 등의 측면에서는 그리 환영받지는 못함 (때문에 많이 사용되지 않음). $$ f(t) = f(t-1) + ... $$ $f(t)$를 정의하는데에 같은 함수가 사용되는 경우를 recursive call로 작성하면 매우 직관적인 구현이 가능하다. 대표적인 예로 Fibonacci sequence를 들 수 있다. $$ f(0) = 0, \\ f(1) = f(2) = 1 \\ f(n) = f(n-1) + f(n-2) \text{ , where }n >2 $$ Python 구현 : Recursive call 이용한 경우. de..
[OpenCV] imshow 창설정 및 종료 처리 (x버튼 처리)
·
Programming/DIP
imshow 창설정 및 종료 처리 (x버튼 처리)창 설정 관련 arguments 및 options cv2.namedWindow를 통해 미리 창에 대한 title을 지정하여 놓을 수 있음.cv2.namedWindow('image', cv2.WINDOW_NORMAL)# Using resizeWindow() : Below code does not works with cv2.WINDOW_AUTOSIZE# cv2.resizeWindow("image", 300, 700)cv2.WINDOW_AUTOSIZE가 기본으로 2nd argument없이 호출시 선택됨.읽어들이는 image 크기에 맞춰 window의 크기가 결정됨.2nd argument로 cv2.WINDOW_NORMAL를 설정시 window의 크기 조정이 가능함..