파이썬 알고리즘 책 보고 있는데

L = [randrange(10000) for i in range(1000)]

S = set(L)


If you're going to do many membership checks, it might pay off, because membership checks are linear for lists and constant for sets.

여기서 set은 왜 constant하다는거냐?? constant하단게 O(1) 말하는거아님?

set으로 중복은 없앨지언정 남은 숫자들은 다 돌아야하니가 linear한거 아니냐;;??