12월, 2013의 게시물 표시

py2exe - setup.py

from distutils.core import setup import py2exe import glob from distutils.core import setup import py2exe setup(     name='LogCleaner',     console=['LogCleaner.py'],     options = { 'py2exe': {                             "packages": ["utils"] #import 패키지 추가                             ,'compressed':1                             ,'optimize':2                              ,'bundle_files':1 #library.zip으로 압축해 주지만 64비트에선 현재일자 기준으로 지원안함                             }},     zipfile = None,     version='1',     url='',     license='',     author='yabgareum',     author_email='yabgareum@gmail.com   ',     description='',     data_files=['config.cfg','fasoo_checkout.gif','index.html'] #정적파일 추가 ) 위코드중 console 모드와 windows 모드가 있다. windows 모드는 백그라운드로 돌아감..  icon_resourse 를 바꾸면 아이콘 모양도 바꿀수 있다. * GUI 프로그램 설치 setup.py ht

모듈

모듈 모듈은 임포트시에도 공유된다. 모듈은 문자열로도 임포트 가능하다. re = __import__("module") 모듈은 기본적으로 메모리에 한번 적재되면 그 상태로 유지 되고 원한다면 재적재할수 있다. reload(module) 파이선 해당파일 실행시 해당 __name__ = "__main__" 이란 이름을 가진다. 이를 이용하여 다음과 같이 정의하면 if __name__ == '__main__': #실행 명령 최상위 모듈일때만 실행명령을 작동시키고 임포트 시에는 작동하지 않도록 처리가능하다. 모듈별로 독립적으로도 수행가능하고 다름 모듈에 호출되어서도 사용가능한것이 파이선의 좋은 특징중 하나이다. 패키지 __init__.py 해당 패키지의 모든 초기값을 설정하고 __all_=[module01, module02..] 를 통해 import* 선별적으로 모듈임포트를 가능하게 할수있다.

함수

내부값 변경이 가능한 리스트 타입일 경우를 제외하고는 모든 함수에 전달된 인수값은 레퍼런스 값으로 함수 내부에서 변경은 인수에 적용되지 않는다. return 되지 않는 함수의 반환값은 언제나 NONE이다. return 문은 어떤 객체라도 반환할수 있다. lambda *args : 튜플형식으로 인수를 받는다. **args : 사전(map)형식으로 인수를 받는다. map 함수 쌍으로 이루어진 인수를 매핑한다. zip 함수 쌍으로 이루어진 인수를 매핑하는데 짧은쪽기준으로 매핑하고 나머진 버린다. filter 함수 연산자와 튜플 또는 리스트 인자를 받아 연산자로 필터링 후 남는 값을 받는다. reduce 함수 누적연산을 실행한다.

python eval/exec/compile

eval a=1 a=eval('a+4') print a >>> a : 5 exec a=1 exec 'a=a+4' print a >>> a : 5 compile eval/ exec 문자열 실행 함수를 컴파일 해서 사용한다.