음머어's 까망별

블로그 이미지
무지 인간의 첫 걸음..
by 까망별 음머어
  • 327,717Total hit
  • 107Today hit
  • 109Yesterday hit

1. 정수형 상수 ( 8진수는 0을 붙이고, 16진수는 0x를 붙인다.)
2. 최대 정수 값의 확인은 sys.maxint
3. 정수형으로 표현 불가능한 큰 수는 Long 형 정수로 표현 가능하면, 범위는 메모리가 허용하는 한 무한대이다.
   숫자의 끝에 l, L 을 붙이면 된다.
4. 오차가 없는 정확한 계산을 위해서는 Decimal 인스턴스를 사용하면 된다.
    e= 0.0
    for k in range(100000):
         e += 0.00001
    print e
5. ** 의 의미는 지수를 의미한다.
     print 2 ** 3 
     8
6. and, or로 연산을 수행할 때, 1 and 2 의 결과가 결정되는 값이 나오게 된다.
    1 and 2 , 1 or 2
    2  1
7. math 함수로 pi, e, sin 등의 값을 불러올 수 있으며, sqrt 같은 연산을 수행할 수 있게 된다.
8. 시퀀스 자료형의 특징
    인덱싱 [k]
    슬라이싱 [s:t]
    연결 +
    반복 *
    멤버쉽테스트 in
    길이 len
9. 문자열은 값의 변경이 불가능하다 .그러므로 변경이 아니라 새로운 문자열을 만드는 작업을 수행해야 한다.
10. 원하는 문자열을 받아 쓸 수 있는 foramtting
     format = 'name = %s, age = %d'
     print format % ('kim',31)
     name = kim, age = 31
11. 사전을 이용한 formatting
     format  = 'name  = %(name)s, age = %(age)s'
     print format %{'name' : 'kim', 'age' :'31'}
12. split 을 이용해 문자열을 나눌 수 있고, 그것의 역으로는 합칠문자.join(리스트) 를 쓰면된다.
13. 문자열을 계속해서 이어 붙이는 것보다 (+=)
     리스트에  append 해서 나중에 join 하는 것이 수백배 빠르다.
14. 유니코드형태로 세면 정확한 길이를 알 수 있다.
     print len('파이썬 어렵다.') , len(unicode('파이썬 어렵다.'))
     14 8
15. 문서 문자열은 모듈 문자열, 클래스 문서 문자열, 함수 혹은 메소드 무서 문자열로
     사용 가능하며, 이러한 것들은 바로 도움마로 사용가능하다.
     각 문자열은 __doc__ 이라는 내장 멤버에 저장된다.
16. 리스트를 스택으로 쓰기.
     append, pop
17. 리스트를 큐로 쓰기 : pop 에 값을 넣으면 해당 값이 리턴되고 빠진다.
     append, pop(0)
18. 리스트에 sort에 원하는 함수를 지정해 넣을 수도 있다.
    def mycmp(a1, a2):
         return cmp(a2, a1)
    [1,2,3,4,5].sort(mycmp)
19. 리스트의 역순 정렬은
    [1,2,3,4,5].sort(reverse=True) 라고 사용하면 된다.
20. 하지만, 객체의 sort 메소드는 리턴 값이 없기 때문에, sorted() 함수를 이용하여 리턴 값을 받을 수 있다.
     사용법은 리스트와 동일하다.(위의 18, 19 사용가능)
21. 정렬을 하고 결과를 뽑고 원상태로 돌아가는 것보다는, 역순으로 데이터를 뽑는 게 더 효율적이다.
    reversed 는 iterator 를 리턴한다.
     for e in reversed(L) :
              print e
22. 리스트 안에서 for문을 이용한 리스트 구성이 가능하다.
     L = [ k * k for k in range(10) ]
     L = [ k for k in range(10) if k%3 == 0 ] <-- 이 경우는 참일 경우만 리스트에 추가된다.
23. 순환참조는 reference count  가 0 이 되지 않으므로, garbage collection 에 방해가 된다.
      test = ['mine']
      test.insert(0, test)
24. sys.argv[1:] 로 사용하면 다수의 인수를 받을 수 있다.
25. getopt 모듈의 getopt 함수 를 사용하면, 명령행의 인수 리스트에서 옵션을 분리해 낸다.
      getopt(인수리스트, 옵션문자들) 
       <--- 인수리스트는 sys.argv[1:], 옵션문자들은 'abc:d:' ,:의 의미는 인수를 갖는다는 의미
26. 리스트에서 * 를 이용한 데이터복사는 참조형의 복사일 수 있으므로 주의한다.
27. 배열은 array를 사용해도 무방할듯. array(typecode, [리스트]) 로 사용한다.
     기본 명령어는 리스트와 동일.
28. 디렉토리의 파일 목록을 얻어오려면, glob 모듈의 glob 함수를 사용한다.
29. 파일의 종류를 알려면 , os.path 모듈의 isfile(path), isdir(path), islink(path), ismount(path), exists(path) 등의
     참과 거짓을 알수 있는 os.path의 함수를 사용하면된다.
30. os.path.getsize(path) , os.path.getatime(path) <-- 최근접근시간, os.path.gettime(path) <-- 최근 수정시간
31. 30번의 결과를 편하게 보고 싶다면, import time 해서 결과물을 ctime 으로 보면 문자열로 변환해 준다.




TRACKBACK 0 AND COMMENT 0

ARTICLE CATEGORY

모든 이야기 (77)
독백 (22)
MySQL (25)
Oracle (7)
영화 (6)
Linux (3)
DW(Data Warehouse) (0)
(7)
음악 (1)
Python (3)
Postgresql (2)

ARCHIVE