'Head First Python'으로 파이썬 공부.
2012년에 읽었던 'Head First Programming -파이썬으로 처음 배우는 프로그래밍'에 이어 2번째 읽는 파이썬 관련 Head First 책. 그러고 보니 Head First 시리즈는 모두 파이썬 관련만 봤다. 첫 책은 파이썬을 이용해 프로그래밍의 일반적인 절차적, 구조적 프로그래밍을 이용한 실용적인 예제들을 다뤘던 듯 하고 이번 책은 파이썬 언어의 특징과 장점들을 잘 살린 역시 실용적인 예제들을 다루고 있다.

14/3/7 금

* 주석- #: 한 줄 주석, '''여러줄 주석'''
* 파이썬 IDLE 상에서- 이전 코드: Alt+P, 다음 코드: Alt+N
* help(): 도움말 보기 ex) help(print)

* 변수: myVar, myVar2 = 30, "hello"
* List(배열): myList = []
* tuple(불변형 배열): myTuple = ()
* 딕셔너리(해시): myDict = {'name':'Tom'} 또는 myDict = dict()
* 집합(중복값 배제 리스트): mySet = set()
* 함수: def myFunc(a, b=0, c="test"):
* 클래스: class myClass:
            def __init__(self): #클래스초기화 함수
* 클래스 상속: class myListClass(list): #내장 list 클래스를 상속받기

* print(value,sep='',end='\n',file=sys.stdout): 화면에 출력.
* len(): 데이터 객체의 길이 혹은 객체 안 항목 수 리턴.
* isinstance(): 식별자가 특정형의 데이터 소유 여부 확인.
* find(): 문자열에서 특정 하위 문자열 찾기.
* str(): 변환가능한 데이터객체 문자열 형태로 변환.
* sort(): (메)리스트 원본 정렬
* sorted(): 사본을 생성해 어떤 데이터 구조라도 정렬.
* locals(): 현재위치에서 접근 가능한 변수들의 집합 반환.

* open(): 파일에서 한 라인씩 데이터를 읽을 수 있는 나열자 생성
* readline(): (메)열린 파일에서 한 줄 읽기.
* seek(): (메)파일 읽기 위치를 변경가능.
* split(): (메)문자열을 하위 문자열의 리스트로 분할.
* close(): (메)열린 파일 닫기.

* pickle.dump(): 데이터를 파일에 이진형태로 저장.
* pickle.load(): 피클로 저장된 파일에서 데이터 읽어오기.

* try/except/finally 문: 예외처리용.
* with 문: 예외 발생시 열려있는 모든 파일을 자동으로 닫아줌.
* pass 문: 빈 문장으로 아무 처리도 안함.
* for 문: for i in myList 또는 for i in range(3) - 0~3

ex) for문으로 구구단 출력하기

위 코드 중 4번 사용된 ''는 사이에 공백없는 홑따옴표 ' 2개로 겹따옴표 " 1개가 아니다. 결과는 아래처럼 출력된다.

02 04 06 08 10 12 14 16 18
03 06 09 12 15 18 21 24 27
04 08 12 16 20 24 28 32 36
05 10 15 20 25 30 35 40 45
06 12 18 24 30 36 42 48 54
07 14 21 28 35 42 49 56 63
08 16 24 32 40 48 56 64 72
09 18 27 36 45 54 63 72 81

* 지능형 리스트:
oldList = ["three", "3", 'oo']
newList = [] #새 리스트 생성
for d in oldList: #oldList 모든 요소 순환
   newList.append(len(d)) #각 요소의 길이를 newList에 담기.
위 3줄의 내용을 지능형 리스트를 이용해 아래와 같이 축약이 가능하다.
newList = [len(d) for d in oldList]
결과로 newList에 [5, 1,2]가 담긴다.