[Python] Dynamic Typed Language vs. Static Typed Language
·
Programming
Python은 대표적인 dynamic (typing) langauge 이다. (dynamic language는 대부분 interpreter language 임.) 좀 더 엄밀하게 애기하면,Dynamic Language란 특정 동작이나 사항들이 runtime(실행 시간)에 결정되는 특징을 가진 Programming Language를 가르킴. comile 시점이 아닌 runtime에 해석되고 실행되며, type이나 호출할 method나 접근할 attribute가 runtime에 해석(and 체크)된다는 특징을 가지고 있다. 유연성이 높고 높은 생산성을 가지나, 성능은 static language 보다 떨어지며 코드가 길어질 경우 오류 탐지가 쉽지 않다는 단점을 가짐.Static (Typing) Languag..
[Python] Keyword란? (Soft Keyword 포함)
·
Programming
Keywords (or Reserved Words)Keyword란 Python에서 특별한 단어 (special word)들을 가르킨다.Keyword들은 Python에서 특정한 목적으로 사용되도록 이미 정해진 word들로Python에서 정해놓은 방법 외로는 사용을 할 수 없음.때문에 variable이나 function등의 name 등으로 사용할 수 없음. 다음 code는 keyword 여부를 체크해볼 수 있는 keyword module을 사용하는 예제임.import keyword# string argument가 Python Keyword인지를 True/False 로 반환해줌.print(f'None is a keyword of Python Interpreter. : {keyword.iskeyword("Non..
[Python] Comments and Docstrings
·
Programming
CommentPython에서의 comment는 주석이라고 불리며, Python Interpreter가 아닌 사람을 위해 작성되는 것임. Comment는 해당 code들이 무엇을 위해 존재하는지 등을 기재하여 개발자가 보다 쉽게 코드를 이해하고 유지 보수할 수 있도록 도와준다. 일반적으로 소스코드는 매우 복잡해지고 그 양이 많아질 수 있기 때문에, 적절한 위치에 해당 코드의 이해를 도울 수 있는 comment는 반드시 작성되어야 한다. Python Interpreter는 #(Hash, Crosshatch, Sharp) 문자를 만나면, 해당 line의 이후 내용은 무시함 (즉, 실행하지 않음).즉, # 문자를 line에서 첫 문자로 놓을 경우 해당 line 전체가 comment가 되고, 중간에 놓이면 그 뒷..
[Basic] namespace, frame, and context
·
Programming
Namespace프로그래밍 등에서 나오는 namespace는 일종의 추상적인 개념변수와 함수, 클래스 들의 이름(name)이 정의되고 사용될 수 있는 범위(scope)를 지칭함. (때문에 scope 란 용어와 자주 같이 사용됨)variable(변수)들의 name과 vairable이 가르키는 실제 object들의 mapping을 관리하는데 사용됨. (=Name collision을 방지하는데 사용됨).name (=identifier)들을 item(or element)로 가지는 일종의 set으로 생각할 수 있음.프로그램에서 variable(변수)들은 모두 특정 namespace에 속해있으며,어떤 namespace 에 속하느냐에 따라 같은 이름이라도 매핑된 obejct가 다르게 된다.때문에 동일한 identif..
[Python] Function Call (함수호출)
·
Programming
1. Function Call 이란Function call은 함수를 호출하여, 해당 함수를 실행하는 것을 의미한다.Python에서는 다양한 built-in function을 제공하고 있으며, third-party에서 제공하는 library의 함수들까지 고려한다면, application을 만드는데 필요한 기반 function들은 이미 다 제공되고 있다고 생각해도 된다.사실 programming에서 중요한 능력 중 하나가 기본에 제공되는 기능들을 조합하여 내게 필요한 기능을 구현하는 것이므로 function call에 대한 확실한 이해가 필요하다.2. Function Call 의 형태 및 규칙Function call의 일반적인 형태는 다음과 같음.function_name (arguments)function ..
[Python] Function Definition, Call and Arguments
·
Programming
이 문서는 function에 대한 간단한 소개를 하고 있다.일부 자세한 내용들은 관련 URL을 추가하는 형태로 확장될 수 있음.Function이란?재사용성 과 가독성 을 위해 논리적으로 코드를 나누는(or 그룹화 하는) 기본적인 도구.procedure의 추상화로서 코드의 묶음: I/O 만 파악해도 사용가능함.함수 내 변수는 local variable로, 다른 함수에 의해 영향을 받지 않음."호출 시 주어진 arguments(인자)" 를 "정의된 parameters(매개변수)에 할당"하여 입력 을 받고, return을 통해 출력 을 수행.function으로 구현하면, 이 후로 같은 처리가 필요할 때 해당 function을 호출하여 실행시키면 된다. (재사용성)예를 들어 100라인 이상의 code를 func..