본문 바로가기
파이썬

파이썬 Add list to set?

by º기록 2021. 2. 3.
반응형

Python 2.6 인터프리터에서 테스트되었습니다.

>>> a=set('abcde')
>>> a
set(['a', 'c', 'b', 'e', 'd'])
>>> l=['f','g']
>>> l
['f', 'g']
>>> a.add(l)
Traceback (most recent call last):
  File "<pyshell#35>", line 1, in <module>
    a.add(l)
TypeError: list objects are unhashable

같은 목록을 두 번 추가했는지 파이썬이 알 수있는 방법이 없기 때문에 목록을 세트에 추가 할 수 없다고 생각합니다. 해결 방법이 있습니까?

수정 : 요소가 아닌 목록 자체를 추가하고 싶습니다.

 

해결 방법

 

목록은 변경 가능하므로 목록을 집합에 추가 할 수 없습니다. 즉, 목록을 집합에 추가 한 후 목록의 내용을 변경할 수 있습니다.

그러나 튜플의 내용을 변경할 수 없기 때문에 세트에 튜플을 추가 할 수 있습니다.

>>> a.add(('f', 'g'))
>>> print a
set(['a', 'c', 'b', 'e', 'd', ('f', 'g')])


몇 가지 사실 :


 

참조 페이지 https://stackoverflow.com/questions/1306631

 

 

반응형

댓글