[Python] f-String
·
Programming
Python : f-StringPython 3.6 이후 도입됨.기존의 중괄호 {}과 format 메소드를 사용하여 문자열 포매팅을 설정하는 방식(Python 2.6 이후)과 유사하지만, 더 직관적으로 문자열을 포맷팅할 수 있는 기능으로 현재는 다른 방법들보다 권장됨이를 formatted string literals라고도 부르며, 더 간결한(succinct) 구문을 가지고 있음.SyntaxPython에서 문자열을 만드는 방식과 거의 유사하나 문자열을 싸고 있는 single or double quotes에서 시작하는 quote앞에 f 나 F를 붙여주면 됨."simple text" : 일반적인 Python 문자열f"formatted string lietera" : f-StringHow to print vari..
[Python] Assignment (Basic)
·
Programming
1. General formAssignment statement의 일반적인 형태는 다음과 같음.varible = expression# variable = other_variable2. 수행 순서= 기호의 오른쪽의 expression을 evaluation함 (하나의 값으로 reduction)1번의 값에 해당하는 object (해당 값을 value로 가진 object)가 저장된 memory address (CPython에서는 해당 object의 ID가 이에 해당)를 variable의 value(값)으로 넘겨줌.= 기호의 왼쪽에 있는 variable이 가지는 name이 최초로 등장한 경우, 해당 variable을 생성시키게 됨.만약 해당 name의 variable이 있었다면 이 variable의 값이 2번에서..
[Python] importlib.reload : module 재적재
·
Programming
기본적으로 Python의 module은 최초로 import될 때에만 수행이 됨. 때문에 Python session에서 특정 module을 import 하고 난 이후 해당 moduel에 수정사항이 발생할 경우, 해당 수정사항은 수행 중인 session에 반영되지 못함. Module에 대한 이해가 부족할 경우 다음 글을 참고할 것. https://dsaint31.me/mkdocs_site/python/basic/module_package/ BME228 Modules and Packages Module 쉽게 생각하면 Python code 로 구성된 file을 가르킨다. Module은 import될 때 각각 고유의 namespace를 가짐 (Namespace의 역할도 수행). Python에서 module은 확장..
[Python] Exception 처리
·
Programming
1. Exception 발생 시 기본 동작Python에서 무엇인가가 잘못된 경우, python interpreter는 exception을 발생시킴.Exception : 동작을 중단시키는 에러를 가르킴.Exception handling : Exception 처리라고도 불리며, 발생한 exception을 처리하여 프로그램이 비정상적 중단(crash)되지않도록 처리하는 것을 가르킴. Python에서 exception이 발생할 경우, 프로그램은 더 이상 수행하지 않고 종료된다.(해당 문제를 그냥 안고 가는 것보다 사용자에게 문제가 발생했다는 것을 알리고 종료하는 게 일반적으로 더 나은 대처임)참고로 이와 같은 종료를 crash 발생이라고도 한다.Exception은 발생한 위치에서 함수호출스택을 따라 상위 호출자..
[Python] Strong Typing이란? with Object
·
Programming
Strong Typing 이란?Python은 object에 대해 Strong Typing을 채택하고 있다.이는 Object가 mutable type이냐 immutable type이냐에 상관없이 type이 변경되지 않음을 의미한다.  주의할 건, Object가 대상인 점이다. Strong Typing을 채택한 Python에서의 관련 특징은 다음과 같음:자동 변환 제한:Python은 정수와 부동소수점(float) 간의 연산처럼 안전한 변환만 자동으로 수행.하지만 정수와 문자열처럼 다른 종류의 타입 간의 변환은 자동으로 이루어지지 않음. 명시적 변환 필요: 다른 타입 간의 연산이나 변환이 필요할 때 Explicit Casting이 요구됨. 유효하지 않은 변환은 오류 발생: 잘못된 변환 시 TypeError 또..
[Python] Variable (and Object)
·
Programming
Variable (and Object)1. 정의Python에서 Variable은 Memory에 할당된 Object를 참조하는 Name (=Reference, Identifier)에 불과하다.이 문서에서 Object는 Python에서의 Object로 type과 value, ID (CPython에서는 할당된 memory address), 그리고 reference count를 가지고 있는 데이터 덩어리(data chunk)를 가리키는 것으로 한정한다.Static Language에서의 Variable들이 type을 가지고 memory에 binding 되어있기 때문에,Static Language에서 variable들은 자신의 type와 다른 type의 memory 영역에 binding이 불가함.다른 type의 m..