PYPROGLIB Telegram 6898
👌 Что умеют множества (set) в Python

1️⃣ Множество ≠ список

fruits = {"apples", "strawberries", "pears", "apples"}
print(fruits) # {'apples', 'pears', 'strawberries'}


🔢 Нет дубликатов.
🔢 Порядок не гарантирован.
🔢 Быстро добавлять / удалять / проверять наличие элемента.

2️⃣ «Словарь без значений»

Вместо словаря вида
colors = {"red": None, "green": None, "blue": None}


используйте множество:
colors = {"red", "green", "blue"}


Дубликаты исчезнут, а кода станет меньше.

3️⃣ Молниеносная проверка «есть ли элемент»

numbers = [int(n) for n in open("numbers.txt")]
numbers_set = set(numbers) # создание множества

no_neighbors = [
n for n in numbers
if n-1 not in numbers_set and n+1 not in numbers_set
]


Преобразование списка в set резко ускорит поиск (O(1) вместо O(n)).

4️⃣ Сет‑арифметика одним символом

a = {1, 2, 3, 4}
b = {3, 4, 5, 6}

a | b # объединение → {1, 2, 3, 4, 5, 6}
a & b # пересечение → {3, 4}
a - b # только в a → {1, 2}
a ^ b # в одном, но не в двух → {1, 2, 5, 6}


Когда нужно узнать общие или уникальные элементы двух коллекций — множества решают задачу одной строкой.

5️⃣ Конвертируем «на ходу»

Нужно сохранить порядок, но иногда делать быстрые проверки?
words = open("words.txt").read().split()
word_set = set(words)

anadromes = [w for w in words if w[::-1] in word_set]


Создаём set ради быстрых проверок, но сами данные храним в списке.

6️⃣ Мгновенная проверка дубликатов

nums = [1, 2, 3, 2]
has_dupes = len(nums) != len(set(nums)) # True


Одна строка — и вы знаете, есть ли повторения.

Когда выбирать set
:
1. Убрать дубликаты, если порядок не важен.
2. Быстро проверить «есть ли элемент».
3. Сравнить коллекции с помощью | & - ^.
4. Проверить уникальность элементов списка.

Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍5❤‍🔥1😁1🤔1



tgoop.com/pyproglib/6898
Create:
Last Update:

👌 Что умеют множества (set) в Python

1️⃣ Множество ≠ список

fruits = {"apples", "strawberries", "pears", "apples"}
print(fruits) # {'apples', 'pears', 'strawberries'}


🔢 Нет дубликатов.
🔢 Порядок не гарантирован.
🔢 Быстро добавлять / удалять / проверять наличие элемента.

2️⃣ «Словарь без значений»

Вместо словаря вида
colors = {"red": None, "green": None, "blue": None}


используйте множество:
colors = {"red", "green", "blue"}


Дубликаты исчезнут, а кода станет меньше.

3️⃣ Молниеносная проверка «есть ли элемент»

numbers = [int(n) for n in open("numbers.txt")]
numbers_set = set(numbers) # создание множества

no_neighbors = [
n for n in numbers
if n-1 not in numbers_set and n+1 not in numbers_set
]


Преобразование списка в set резко ускорит поиск (O(1) вместо O(n)).

4️⃣ Сет‑арифметика одним символом

a = {1, 2, 3, 4}
b = {3, 4, 5, 6}

a | b # объединение → {1, 2, 3, 4, 5, 6}
a & b # пересечение → {3, 4}
a - b # только в a → {1, 2}
a ^ b # в одном, но не в двух → {1, 2, 5, 6}


Когда нужно узнать общие или уникальные элементы двух коллекций — множества решают задачу одной строкой.

5️⃣ Конвертируем «на ходу»

Нужно сохранить порядок, но иногда делать быстрые проверки?
words = open("words.txt").read().split()
word_set = set(words)

anadromes = [w for w in words if w[::-1] in word_set]


Создаём set ради быстрых проверок, но сами данные храним в списке.

6️⃣ Мгновенная проверка дубликатов

nums = [1, 2, 3, 2]
has_dupes = len(nums) != len(set(nums)) # True


Одна строка — и вы знаете, есть ли повторения.

Когда выбирать set
:
1. Убрать дубликаты, если порядок не важен.
2. Быстро проверить «есть ли элемент».
3. Сравнить коллекции с помощью | & - ^.
4. Проверить уникальность элементов списка.

Библиотека питониста #буст

BY Библиотека питониста | Python, Django, Flask




Share with your friend now:
tgoop.com/pyproglib/6898

View MORE
Open in Telegram


Telegram News

Date: |

But a Telegram statement also said: "Any requests related to political censorship or limiting human rights such as the rights to free speech or assembly are not and will not be considered." Telegram desktop app: In the upper left corner, click the Menu icon (the one with three lines). Select “New Channel” from the drop-down menu. With Bitcoin down 30% in the past week, some crypto traders have taken to Telegram to “voice” their feelings. The Standard Channel Hashtags are a fast way to find the correct information on social media. To put your content out there, be sure to add hashtags to each post. We have two intelligent tips to give you:
from us


Telegram Библиотека питониста | Python, Django, Flask
FROM American