Если для хранения данных не требуется сохранения порядка и дубликатов элементов, можно использовать множества вместо списков. Чем длиннее список элементов и чем дальше элемент поиска, тем больше преимуществ у множества.
Давайте убедимся на деле:
import time, random
# Генерируем список с дубликатами и преобразуем в множество
numbers_list = [random.randint(0, 10**6) for _ in range(10**6)]
numbers_set = set(numbers_list)
# Список случайных элементов для поиска
search_items = random.sample(range(10**6), 1000)
# Функция для замера времени поиска
def measure_search(container):
start = time.time()
for item in search_items:
item in container
return time.time() - start
# Замеры времени поиска
list_time = measure_search(numbers_list)
set_time = measure_search(numbers_set)
# Результаты
print(f"Поиск в списке: {list_time:.6f} сек") # Примерно 4.3 сек
print(f"Поиск в множестве: {set_time:.6f} сек") # Примерно 0.0009 сек
———
Good coding
#python #short #list #set
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2 1