그래서 빈 목록 목록을 가장 잘 만드는 방법이 궁금합니다.
[[],[],[]...]
파이썬이 메모리의 목록과 함께 작동하는 방식 때문에 작동하지 않습니다.
[[]]*n
이것은 생성 [[],[],...]되지만 각 요소는 동일한 목록입니다.
d = [[]]*n
d[0].append(1)
#[[1],[1],...]
목록 이해와 같은 것이 작동합니다.
d = [[] for x in xrange(0,n)]
그러나 이것은 루핑을 위해 Python VM을 사용합니다. 묵시적 루프를 사용하는 방법이 있습니까 (C로 작성된 이점을 활용)?
d = []
map(lambda n: d.append([]),xrange(0,10))
이것은 실제로 더 느립니다. :(
timeit무엇을 배웠습니까?
map(lambda x: [], xrange(n))목록 이해보다 느리다는 것을 방금 확인했습니다 .
d = [[] for x in xrange(0,n)]입니다. Python에서 명시 적으로 반복하거나 Python 함수 / 람다를 반복적으로 호출해야합니다 (더 느려 야 함). 그러나 여전히 누군가가 내가 틀렸다는 것을 보여주는 것을 게시하기를 바랍니다. :).