요즘 뭐 새로운거 없을까 찾다가 파이썬을 해보고 있습니다.
책을 읽다가 자칫 실수할 수 있는 내용이 있길래 스크랩을 해둡니다.


문자열 붙이기에 사용되는 다음 두 개의 코드를 비교해 보자. 첫 번째 방법은 문자열에 문자열을 연결하는 방법이다. (10만번)

s = ''
for k in range(100000) :
    s += 'spam'


두 번째 방법은 연결될 문자열을 일단 리스트에 저장한 후 나중에 한꺼번에 연결하는 방법이다.

t = []
for k in range(100000) :
    t.append('spam')
s = ''.join(t)


두 개의 코드를 저자의 컴퓨터에서 실제로 비교해 본 결과 첫 번째 방법이 380.873초 걸린 반면에 두 번째 방법은 불과 0.843초 밖에는 걸리지 않았다. 그 이유는 첫 번째 방법은 문자열을 실제로 10만번 붙이기 위하여 메모리 할당을 10만번 하고 10만번 해제한다. 또한 그 크기도 점차 늘어서 나중에는 400K 가까운 메모리를 할당하고 해제를 반복한다. 반면에 두 번째 방법은 필요한 만큼의 문자열을 메모리에 해제함 없이 저장한 후 나중에 한번만 붙이므로 연산 속도가 상당히 빠르다. 가장 빠른 연산은 s = 'spam' * 10000 으로 불과 0.01초밖에는 걸리지 않았다. 하지만 다른 문자열을 붙이는 경우라면 두 번째 방법이 효과적이라고 생각한다.

출저 : 열혈강의 파이썬(이강성 저) 165p
2008/09/08 18:01 2008/09/08 18:01
tagged with  ,
REPLY AND TRACKBACK RSS http://gmong.com/blog/rss/response/347
REPLY AND TRACKBACK ATOM http://gmong.com/blog/atom/response/347
TRACKBACK ADDRESS
http://gmong.com/blog/trackback/347
REPLY RSS http://gmong.com/blog/rss/comment/347
REPLY ATOM http://gmong.com/blog/atom/comment/347
wrote at 2008/09/09 11:14
더헛!

어렵다는 파이썬 아닌가요 =_=;;;;;;;;

흐음;;;;;

재미있나요 'ㅁ'?;;;;;

회사 입사 및 학교 졸업 이후로는

언어를 잡을일이 절대 없어서 =_+;;;

어렵기 그지 없군요. 후하 'ㅁ'
wrote at 2008/09/10 13:45
저는 하는 일이 이쪽이라서,
재밌게 잘 하고 있습니다^^;
자바나 C보다는 훨 재밌군요-_-b
wrote at 2008/10/07 11:22
나도 파이썬 공부해야데는데..
알려줘!!!!! 지몽사마 ㅎㅎㅎ
wrote at 2008/10/13 11:49
요즘 교육과정에 파이썬 있어?
수강료만 들고와~ 알려줄게ㅋ
wrote at 2008/10/13 14:44
공짜는 안될까? ^^*
wrote at 2008/10/13 17:26
내 사전에 공짜는 없어.
내 모습을 3D 모델링 해주면 생각해보지.
wrote at 2008/10/13 19:07
앞모습 뒷모습 옆모습

정직하게 찍어서보내면 생각해보마 ㅋㅋㅋ
gmong 
wrote at 2008/10/15 16:35
나야 늘 정직하니 아무 사진이나 가져다 주면 되겠군ㅋㅋ
[로그인][오픈아이디란?]
이름 :
비밀번호 :
홈사이트 :
비밀글 :
*1  *2  *3  *4  *5  *6  *7  ... *182 
count total 248844, today 9, yesterday 6
관리인 : gmong
rss
I am
알립니다
전체
gmong
Photography
Travel
Movie
Think
Info
Positive
Humor
Music
Fashion
Vermong
PDA
Programming
글 보관함
2009/12, 2008/09, 2008/08, 2008/03, 2008/02,
달력
«   2010/03   »
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31