Software, Computer Science/Python 3
-
Python sys module, path 정리Software, Computer Science/Python 3 2020. 2. 1. 21:36
1. Sys module Python은 여러 모듈이 합쳐져서 프로젝트를 이루게 된다 pip를 이용하여 모듈 패키지를 추가할 수 있고 용도에 따라 웹개발이나, AI/ML개발, 게임 개발 등이 가능하다. 개발자 개인이 만든 local package module 을 이용하여 더 다양한 프로젝트를 만들 수 있다. 그렇다면 import 를 써서 어떻게 모듈과 패키지를 찾는 것일까 ? 1-1. import search order Python은 크게 세가지 구역에서 아래와 같은 순서로 module/package들을 찾게 된다 sys.modules => built-in modules => sys.path sys.modules Python이 module이나 package를 찾기 위해 우선적으로 살피는 영역으로 dicti..
-
Python module, package 관련 내용 정리Software, Computer Science/Python 3 2020. 2. 1. 20:16
Python 문법에 관한 내용 일부 정리 5(Python module, package 내용 정리) 1. python package관련 1-1. 모듈 관련 간략 정리 __init__.py 는 package가 import될 때의 초기설정을 가능하게 해주는 py파일이다. 즉 해당 디렉터리가 패키지임을 알려주는 역할을 한다. (파이썬 3.3 버전 이후로 해당 파일을 직접 만들어 주지 않아도 패키지로 인식이 된다고 한다 (링크참고(PEP 420))) 아래와 같은 파이썬 프로젝트가 있다고 가정해보자. app/ __init__.py sound/ __init__.py main_Sound.py click_sound.py graphic/ __init__.py screen.py images.py logic/ __init__..
-
Python scope에 관한 정리 요약Software, Computer Science/Python 3 2020. 1. 31. 10:53
1. Scope scope는 어떤 변수나 객체 등이 적용될 수 있는 말 그대로 범위라고 보면 된다. python에선 해당 변수나 객체가 생성된 지점에서 상위 객체까지, 아래로는 모든 하위 객체와 그 내부 까지에 해당된다. Scope개념은 크게 4종류로 나눠 볼 수 있다. Local Scope Enclosed Scope Global Scope Built-in Scope (이미지 출처 : https://wellsr.com/python/assets/images/2018-09-07-scopes-diagram.png) 1-1. Local Scope def local_scope(): local_var = 1 print(local_var) print(local_var) # local_Var는 함수 내에서만 호출 가..
-
Python nested function, closure, decorator 정리Software, Computer Science/Python 3 2020. 1. 30. 22:01
1. Nested function(중첩함수) python에서 함수 또한 반복문이나 조건문과 마찬가지로 중첩하여 사용할 수 있다. def outer_function(): def inner_function(): print("this is inner function") inner_function() outer_function() 내부에 있는 inner_function()은 outer_function()에서만 호출이 가능하며 outer_function()밖에선 호출이 될 수 없다. 그렇다면 왜 nested function을 사용하는 것일까 ? 첫번째로 우리가 함수를 사용하는 주된 이유중 하나인 반복의 방지 및 가독성이다. def outer(): # logic A # logic B # logic A # logic..
-
Python loop-else, *args, **kwargs정리Software, Computer Science/Python 3 2020. 1. 30. 18:57
1. Python while-else 구문 파이썬에선 특이하게도 while반복문과 연결해서 else가 따라올 수 있게 되어있다. 있는 그대로 직역하게 되면 while이 아니면 실행해라는 식으로 해석 될 수 있지만 그런 의미가 아니다. while loop를 break없이(예외없이) 끝까지 다 돌고 나서 else이하의 구문들을 실행해라 즉 while의 조건문이 아니게 되면 실행해라. 는 의미를 가지고 있다. 예를 들면, num = 0 while num < 5: print(num, end=' ') num += 1 else: # indent 주의할 것 while-else문이기 때문에 if-else 연결하듯이 코딩 print("loop가 무사히 끝났습니다") 0 1 2 3 4 loop가 무사히 끝..
-
Python function keyword arguments, parameter default value 정리Software, Computer Science/Python 3 2020. 1. 29. 20:35
1. Python keyword arguments Python 함수에서 정의된 parameter의 순서와는 다르게 parameter의 이름을 명시해 준다면 순서가 반대로 되어도 값을 전달 해 주는 것이 가능하다 def test_function(my_parameter, your_parameter): print(f"{my_parameter} 그리고 {your_parameter}".format(my_parameter, your_parameter)) # 실행 결과 : 내꺼 and 니꺼