[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사용)처리..
[Programming] Application Programming Interface (API)
·
Programming
API란Application Programming Interface (API)는 서로 다른 S/W Application이 source code 수준 에서 통신할 수 있도록 하는 Protocol 및 definition으로 구성된 Interface임.즉, API는 여러 S/W Application들이 서로 원활하게 상호 작용할 수 있도록 도와주는 souce code 수준의 inteferace임.API는 일반적으로 서로 다른 S/W Application들이 어떻게 통신할 수 있는지를 지정하는 규칙, 즉 Protocol을 정의하고 있으며, 이는 교환 가능한 Data type 및 통신이 이루어지기 위해 충족되어야하는 기타 조건이나 요구사항을 정의하는 것을 포함함.API는 protocol을 가르키지, 해당 prot..
[Python] range and enumerate
·
Programming
range 란엄밀하게 애기하면, range 는 숫자들의 immutable sequence 를 생성하기 위한Lazy Iterable (메모리 효율적인)을 나타내는 built-in type이다. 즉, 흔히 built-in function으로 애기하는 range() 는 사실은 range class의 instance를 생성하는 생성자에 해당한다. sequence는 index를 통해 접근 가능한, 즉 item들이 놓여있는 순서가 의미를 가지는 자료구조를 추상화한 것이다. https://dsaint31.tistory.com/569#Sequence [Math] Sequence (수열) and Series (급수)Sequence수열, 열 이라고 불림.numbers나 objects 들이 순서를 가지고(ordered) ..
[Python] Iterable and Iterator, plus Generator
·
Programming
Iterable and Iterator, and GeneratorIterable for 문에서 in 뒤에 위치하여 iterate (반복, 순회)가 가능한 object를 가르킴.__iter__() 라는 special method를 구현하고 있으며, 이를 통해 자신에 대한 iterator object를 반환할 수 있음.__iter__() special method는보통 iter()함수에 argument로 "iterable instance"가 전달되는 경우해당 argument로 넘겨진 객체(=iterable 객체)의 __iter__() 메서드 가 호출되어 반환되는 iterator 객체가 iter()함수에서 최종 반환됨.여러 데이터를 묶어서 관리하는 Collection들의 object들의 경우, 거의 다 ite..
[Python] Comprehension (list, dict, set) and Generator Expression
·
Programming
List ComprehensionList comprehension is an expression(표현식) that transforms a collection (not necessarily a list) into a list.list를 생성하는 expression 으로, 원본이 되는 collection 의 모든 item 혹은 일부 item들에 대해 같은 operation을 적용하여 새로운 list (사실은 collection 또는 generator) 를 생성한다. 사실 list comprehension 은 일종의 shorthand expression으로 중첩된 여러 반복문(loop) 및 조건문(if)으로 collection을 생성하는 것을 한 줄로 작성가능하게 해준다.list comprehension은co..