레이블이 python function인 게시물을 표시합니다. 모든 게시물 표시
레이블이 python function인 게시물을 표시합니다. 모든 게시물 표시

2016년 7월 25일 월요일

Head First Python 요약 - 2장,3장

IDLE 단축키들

  • [Tab] : 자동 완성 목록 제공
  • [Alt + P] : 이전 입력 내용
  • [Alt + N] : Next 입력 내용
  • [F5] : 모듈 코드 실행

Chapter 2, 함수 모듈

정리

  • 파이썬 모듈 경고 보여 주기
    • import sys; sys.path
    • ; “ : 여러 문자을 동시에 한줄에 표시하고자 할때 사용함.
  • 파이썬 모듈 배포 순서
    • 배포준비
      • 폴더 생성
      • setup.py 생성

from distutils.core import setup
setup(
       name            = 'nester',
       version         = '1.3.0',
       py_modules      = ['nester'],
       author          = 'cosmoslight',
       author_email    = 'cosmoslight.huni@gmail.com',
       url             = 'http://http://namusoft.vps.phps.kr/',
       description     = 'a simple printer of nested lists',        
   )
    • 배포 패키지 만들기
      • 배포 패키지 생성
        • python.exe setup.py sdist
      • 파이썬 환경에 설치 : 리눅스 경우 관리자 권한 필요
        • python.exe setup.py install
  • 배포 패키지 구조 보기
NESTER
 MANIFEST
 nester.py
 setup.py
├─build
 └─lib
         nester.py
└─dist
       nester-0.0.0.zip
  • 모듈 사용하기 :
    • import module
    • 다른 방법 : from module import function
      • 위 방법은 현재 네임스페이스 동일한 함수를 덮어쓰게 됨.
  • 네임스페이스
    • __main__ : 기본 네임스페이스
    • nester : 사용자 모듈 네임 스페이스
      • 사용예 : nester.print_lol()
  • 코드를 PyPI에 등록하기
    • python.exe setup.py register
    • python.exe setup.py sdist upload
  • *.pyc 파일 ?
    • 인터프리터가 여러분의 모듈 코드를 처음으로 실행할 때 코드를 읽어서 내부적인 바이트 코드를 실행되는 것
  • 내장함수(BIF)의 네임스페이스
    • __builitins__
  • range() 사용예
for num in range(10):
  print(num)
  • 선택적 인자
    • 기본값을 지정, 생략하면 기본값이 지정됨
    • : def print_lol(the_list, level = 0):

Chapter 3. 에러 처리

정리

  • 파일 열고 -> 한줄씩 읽고 -> 출력하고 -> 닫기
the_file = open('file.txt')
the_file.seek(0)
for each_line in the_file:
  print(each_line)
the_file.close()
  • 테이터 나누기
    • (role , line_spoken) = each_line.split(":")
      • role : 첫번째 구분 영역
      • line_spoken : 두번째 혹은 나머지 구분 영역 , 만약 split(“:”,1) 일때는
        나머지 구분 영역
  • 반대 조건
    • if not Boolean:
  • 에러을 피하는 방법
    • 논리 검사 코드 추가 : 일반적으로 다른 프로그램에서 처리한다.
    • 예외 처리 기법
  • 런타임에러(Python에서는 예외)를 무시 하면 크래시 됩니다.
  • Python 에러 처리 메커니즘
    • 먼저 실행하고, 나중에 복구하기
    • try/except/finally
      • try: 런타임 에러를 발생시킬 수도 있는 코드
      • except: 여러분이 정의한 에러 복구 코드
      • finally: 마무리 실행되는 코드
  • Python의 두종류 리스트
    • 변형없는 리스트 : tuple , () , 괄호
    • 변형될수 있는 리스트 : [] , 대괄호
  • pass : 빈 문장 , empty/null 문장이라고 하기도 함.

출처 : Head First Python (한빛출판사)