목록 이해력을 가지고 놀다가 다른 사이트에서이 작은 스 니펫을 발견했습니다.
return ''.join([`num` for num in xrange(loop_count)])
나는 `num`
비트가 그것을 깨고 있다는 것을 깨닫기 전에 몇 분 동안 함수를 복제하려고 (입력하여) 보냈다 .
그 문자로 문장을 묶는 것은 무엇을합니까? 내가 볼 수 있듯이 str (num)과 동일합니다. 하지만 시간을 정했을 때 :
return ''.join([str(num) for num in xrange(10000000)])
4.09 초가 걸립니다.
return ''.join([`num` for num in xrange(10000000)])
2.43 초가 걸립니다.
둘 다 동일한 결과를 제공하지만 하나는 훨씬 느립니다. 여기서 무슨 일이 일어나고 있습니까?
편집 : 이상하게 ... repr()
보다 약간 느린 결과를 제공합니다 `num`
. 2.99 초 대 2.43 초. Python 2.6 사용 (아직 3.0을 시도하지 않았습니다).