답변:
해시 가능한 객체 목록이있는 경우 (파일 이름은 문자열 일 수 있으므로 계산해야합니다) :
lst = ['foo.py', 'bar.py', 'baz.py', 'qux.py', Ellipsis]
세트를 직접 구성 할 수 있습니다.
s = set(lst)
사실, 반복 가능한 객체로set
이런 식으로 작동 합니다! (오리는 타이핑을 잘하지 않습니까?)
반복적으로 수행하려면 다음을 수행하십시오.
s = set()
for item in iterable:
s.add(item)
그러나 이런 식으로 할 필요는 거의 없습니다. 이 set.add
방법은 매우 유용 하기 때문에 언급 만합니다.
y = set(x)
넌 할 수있어
my_set = set(my_list)
또는 Python 3의 경우
my_set = {*my_list}
목록에서 세트를 작성합니다. 반대로, 당신은 또한 할 수 있습니다
my_list = list(my_set)
또는 Python 3의 경우
my_list = [*my_set]
세트에서 목록을 작성합니다.
집합이 본질적으로 정렬되지 않기 때문에 목록을 집합으로 변환 할 때 목록의 요소 순서는 일반적으로 손실됩니다. (CPython의 한 가지 예외는 목록이 음이 아닌 정수로만 구성된 경우 인 것 같습니다. 그러나 이것이 CPython의 세트 구현의 결과이고이 동작이 다른 Python 구현마다 다를 수 있다고 가정합니다.)