반응형

파이썬 5

Python How import statement finds modules and packages

Python How import statement finds modules and packages 파이썬은 module과 package를 어떻게 찾을까? 그 방법에 대해서 알아보자. Import Search 순서 예를 들어, abc 라는 package가 있다고 가정해 보자. 그리고 abc package를 사용하려면 다음처럼 import 해야 한다. import abc 여기서 abc는 단순한 파이썬 파일(모듈일 경우) 이거나 파이썬 파일들을 담고 있는 디렉토리(package의 경우) 이다. 그러므로 해당 파일이나 디렉토리가 어디있는지 파이썬이 찾을 수 있어야 import가 가능할것이다. 파이썬은 다음 3가지 장소를 순서대로 보면서 찾는다. sys.modules built-in modules sys.path..

Python/Python기초 2021.09.09

Python Module & Packages

Python Module & Packages Python Module & Packages에 대해서 알아보자. 파이썬에서 모듈은 변수나 함수 그리고 클래스 등을 모아놓은 파일이다. 따로 모듈로 모아놓은 이유는 다음과 같다. 다른 파일에서 재사용이 가능하게 하고 전체 코드가 한 파일에 넣기에는 너무 커졌을때 여러 파일로 나누어서 정리를 하기 위해서 예를 들어, List의 총 요소 개수를 알고 싶으면 len 함수를 사용하면 된다. my_list = [1, 2, 3, 4, 5] my_list_length = len(my_list) print(my_list_length) 하지만 len 함수를 직접 구현한적은 없다. 파이썬에서 이미 모듈로 구현해놓았음으로 그냥 가져다 쓰면 되는 것이다. 이렇게 모듈은 다른 사람들이..

Python/Django기초 2021.09.09

Python Class

Python Class Python Class에 대해서 알아보자. class의 사전적 의미는 굉장히 많이 있다 그 중 코딩에서 사용되는 class의 의미는 '부류'에 가깝다. 부류의 뜻은 "동일한 범주에 속하는 대상들을 일정한 기준에 따라 나누어 놓은 갈래" 라는 뜻이 있다. 즉 공통점이 많은 것들을 가리켜 "같은 부류" 라고 한다. 예를 들어 유재석 양세형 유병제 지석진 등의 공통점은 4사람 다 '코미디언'이란 직업을 가지고 있다. 이때 '코미디언'이 class가 된다. 그러나 '코미디언'이라는 것은 개념일 뿐이다. 코미디언의 실체 (instanace) 는 지석진, 유재석, 양세형, 유병재이다. 이 실체(instance)들을 object(객체) ..

Python/Python기초 2021.09.09

Python Scope

Python Scope Python Scope에 대해서 알아보자 scope는 범위라는 뜻이다. 프로그래밍 언어에서는 scope는 어떠한 객체(변수,함수 등)가 유효한 범위를 말한다. 범위를 벗어나면 해당 객체는 사용이 불가능한다. Python에서 scope는 항상 객체가 선언된 지점에서 위로는 상위 객체 까지, 아래로는 모든 하위 객체들과 그 안에까지 범위이다. 범위는 크게 4가지이다. Local Scope Enclosed Scope Global Scope Built-in Scope local이 제일 범위가 제한적이고 Built-in이 가장 범위가 넓다. 1. Local Scope Local scope을 가지고 있는 변수나 함수 혹은 객체는 이름 그대로 특정 범위에서만 유효하다. 주로 함수 안에서 선언된..

Python/Python기초 2021.09.09

Python Nested Function

Python Nested Function Python 중첩함수는 왜 쓰는 것일까? 가독성 Closure 에 대해서 알아보자. 함수를 중첩해서 쓰는것이 Nested Function함수이다. 일명 중첩 함수! def parent_function(): def child_function(): print("this is a child function") child_function() parent_function() 위 와 같이 나타낼수 있다. 그럼 중첩 함수는 왜 쓰는 것일까? 가독성 Closure 1. 가독성 함수를 사용하는 이유는 반복되는 코드블럭을 함수로 정의해서 효과적으로 코드를 관리하고 가독성을 높이기 위함이다. 중첩 함수도 사용하는 이유는 동일하다. 함수 안의 코드 중 반복되는 코드가 있다면 중첩 함수..

Python/Python기초 2021.09.09
반응형