2012-11-23 3 views
4

listset을 해시로 저장해야합니다. 동일성 : 동일한 개체 인 경우 두 개의 목록이 동일합니다.파이썬에서 목록의 해시 테이블을 저장하는 방법 (ID로 해시)?

뿐만 아니라 tuplenot make much sense semantically를 사용하지만 때로는 목록을 변이 (가끔씩 끝에 몇 가지 요소를 추가) 할 필요가 그래서 나는 전혀 tuple을 사용할 수 없습니다 않습니다.

파이썬에서 ID로 해시 된 목록의 해시 세트를 어떻게 저장합니까?

대신 세트의 사용 dict

답변

14

하고 목록의 id이 열쇠가 될 수 있도록 다음 "설정"id(lst) in dct 사용에 목록의 존재에 대한

dct[id(lst)] = lst 

테스트합니다.

+1

마인드 블로우. 무리 감사. – Mehrdad

+0

'set'의 ID에서 객체를 어떻게 되 찾을 수 있습니까? 개체 매핑에 대한 ID를 별도로 추적해야합니까? – Mehrdad

+0

@Mehrdad : 만약 당신이'id'를 사용한다면, 당신은 단지 집합 대신에 dict를 사용할 수 있다고 생각합니다. – BrenBarn

관련 문제