Self-Improvement

Head First Python 4장 본문

프로그래밍/Python

Head First Python 4장

JoGeun 2018. 10. 21. 13:02

*vsearch.py 모듈 정의 예제



linux에서 작성함
--------------------------------------------------
#! /usr/bin/python3

  #phrase는 string이며 호출코드로 집합을 반환한다.(어노테이션)
def search4vowels(phrase: str) -> set:   
    """Returns the set of vowels found in 'phrase'.""" 
  #docstring이라하여해당 함수의 설명문이다.
    return set('aeiou').intersection(set(phrase))   
 #set()으로 집합을 만들며 인자로받은 phrase와의 교집합하여 return으로 반환한다.

#phrase는 string, letters의 인자는 string이며 초기값이 설정되어있다.(인자를 아무거나 넣어도 초기값으로 실행이되어짐)
def search4letters(phrase: str, letters: str='aeiou') -> set:  
    """Returns the set of 'letters' found in 'phrase'.""" 
    return set(letters).intersection(set(phrase)) 
--------------------------------------------------

※어노테이션 : 어노테이션을 설정함으로 프로그래머 입장에서 함수코드를 통해 인자와 반환값의 유형을 확인할 번거로움이 사라진다.

* 정의한 모듈 사용법
정의한 모듈을 사용할려면 모듈이 존재하는 디렉터리내에서 진행을 해야한다.


----------------------------------------
#! /usr/bin/python3

import vsearch   #위의 모듈을 임포트하여 사용하였다.
print(vsearch.search4vowels('aaaa'))
----------------------------------------




*모듈을 배포파일로 만들어주는 예제
 해당부분은 kali에서가 아닌 윈도우에서 진행하였다.



--------------------------------------------------
from setuptools import setup   
 #setuptools 모듈에서 setup 함수를 임포트한다.

setup( 
    name='vsearch',   
    version='1.0', 
    description='The Head First Python', 
    py_modules=['vsearch'],     
 #패키지에 포함할 .py파일을 정의

---------------------------------------------------



setup.py와 vsearch.py가 같은 디렉터리에 있어야하며 위의 명령어를 통해 배포파일이 만들어진다.



dist파일과 vsearch.egg-info 두가지가 생성이 되어진다.
disk 파일안에는 압축파일이 들어가있다.




'프로그래밍 > Python' 카테고리의 다른 글

python request 모듈  (0) 2018.10.21
Head First Python 5-1장  (0) 2018.10.21
Head First Python 3장  (0) 2018.10.21
Head First Python 2장  (0) 2018.10.21
Head First Python 1장  (0) 2018.10.21