πŸ”Ž Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ set() Π² Python? ПонимаСм Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ особСнности set Π² Python 🐍

Set Π² Python

Set Π² Python являСтся нСупорядочСнным ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с мноТСствами.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с set:

# Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ set
my_set = {1, 2, 3}

# Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнтов Π² set
my_set.add(4)

# Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнтов ΠΈΠ· set
my_set.remove(2)

# ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° принадлСТности элСмСнта ΠΊ set
if 3 in my_set:
    print("Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ 3 присутствуСт Π² set")

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ set Π² Python?

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ (set) Π² Python прСдставляСт собой нСупорядочСнный ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, содСрТащий ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим возмоТности ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ мноТСства Π² языкС Python.

1. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ мноТСства

МоТно ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ мноТСство, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки {} ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ set(). Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

my_set = {1, 2, 3, 4, 5}
print(my_set)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 3, 4, 5}

my_set = set([1, 2, 3, 4, 5])
print(my_set)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 3, 4, 5}

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ мноТСство ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ элСмСнты Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ ΠΎΠ½ΠΎ само являСтся нСизмСняСмым (immutable) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

2. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с мноТСствами

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ дСйствия Π½Π°Π΄ элСмСнтами мноТСства. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ…:

2.1 Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнтов Π² мноТСство

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт Π² мноТСство с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° add(). Если элСмСнт ΡƒΠΆΠ΅ присутствуСт Π² мноТСствС, Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

my_set = {1, 2, 3}
my_set.add(4)
print(my_set)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 3, 4}

my_set.add(2)  # Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта
print(my_set)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 3, 4}
2.2 Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнтов ΠΈΠ· мноТСства

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΈΠ· мноТСства с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° remove() ΠΈΠ»ΠΈ discard(). Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ remove() Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Ссли элСмСнт Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ Π² мноТСствС, Π° discard() Π½Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

my_set = {1, 2, 3, 4}
my_set.remove(3)
print(my_set)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 4}

my_set.discard(2)
print(my_set)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 4}

my_set.remove(5)  # ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° удалСния Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ элСмСнта Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅
2.3 ОбъСдинСниС мноТСств

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΄Π²Π° мноТСства с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° union() ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° "|". Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

set1 = {1, 2, 3}
set2 = {3, 4, 5}
set3 = set1.union(set2)
print(set3)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 3, 4, 5}

set4 = set1 | set2
print(set4)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 3, 4, 5}
2.4 ΠŸΠ΅Ρ€Π΅ΡΠ΅Ρ‡Π΅Π½ΠΈΠ΅ мноТСств

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ пСрСсСчСниС Π΄Π²ΡƒΡ… мноТСств с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° intersection() ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° "&". Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

set1 = {1, 2, 3}
set2 = {3, 4, 5}
set3 = set1.intersection(set2)
print(set3)  # Π’Ρ‹Π²ΠΎΠ΄: {3}

set4 = set1 & set2
print(set4)  # Π’Ρ‹Π²ΠΎΠ΄: {3}

Π­Ρ‚ΠΎ лишь Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с мноТСствами. Π’ Python сущСствуСт Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ большС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с мноТСствами.

3. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ мноТСств Π² Python

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° Π² Python ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… случаях, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ:

- Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² ΠΈΠ· списка ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ элСмСнтов. - ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° принадлСТности элСмСнта ΠΊ мноТСству. - Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ мноТСствами, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ объСдинСниС, пСрСсСчСниС ΠΈ Ρ€Π°Π·Π½ΠΎΡΡ‚ΡŒ. - ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° наличия элСмСнтов Π² мноТСствС.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ²

my_list = [1, 2, 3, 2, 1, 4, 5, 4, 3]
unique_set = set(my_list)
print(unique_set)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 3, 4, 5}

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° принадлСТности элСмСнта

my_set = {1, 2, 3, 4, 5}
print(3 in my_set)  # Π’Ρ‹Π²ΠΎΠ΄: True
print(6 in my_set)  # Π’Ρ‹Π²ΠΎΠ΄: False

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 3: Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ мноТСствами

set1 = {1, 2, 3}
set2 = {3, 4, 5}

# ОбъСдинСниС мноТСств
union_set = set1.union(set2)
print(union_set)  # Π’Ρ‹Π²ΠΎΠ΄: {1, 2, 3, 4, 5}

# ΠŸΠ΅Ρ€Π΅ΡΠ΅Ρ‡Π΅Π½ΠΈΠ΅ мноТСств
intersection_set = set1.intersection(set2)
print(intersection_set)  # Π’Ρ‹Π²ΠΎΠ΄: {3}

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли основныС возмоТности ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ мноТСств Π² Python. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ мноТСство Π² Python - это нСупорядочСнный ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, содСрТащий ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ элСмСнты. ΠœΡ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с мноТСствами, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, объСдинСниС ΠΈ пСрСсСчСниС. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, рассмотрСли ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования мноТСств Π² Python.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

31 ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° Π² Python. Π’ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… set

Π£Ρ€ΠΎΠΊΠΈ Python с нуля / #11 - ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° (set ΠΈ frozenset)

#32. ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° (set) ΠΈ ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ | Python для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ”Ž Как Π½Π°ΠΉΡ‚ΠΈ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ°Π» числа Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅ - простыС шаги ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° 🐍

🐍 Π“Π΄Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΠΈΡ‚Π°ΡŽΡ‚ Π°Π½Π°ΠΊΠΎΠ½Π΄Ρ‹ ΠΈ ΠΏΠΈΡ‚ΠΎΠ½Ρ‹ Π² ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π΅? 🌿

πŸ” Как Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ массив Π°Π»Ρ„Π°Π²ΠΈΡ‚ΠΎΠΌ ΠΏΠΈΡ‚ΠΎΠ½: простая инструкция ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

πŸ”Ž Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ set() Π² Python? ПонимаСм Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ особСнности set Π² Python 🐍

πŸ”§ Как ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Π² Python: простоС руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… πŸ”§

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ исходный ΠΊΠΎΠ΄ сайта Python? πŸπŸ” | ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ совСты для получСния исходного ΠΊΠΎΠ΄Π° сайта Π½Π° Python

πŸ” Как пСрСвСсти Π² Π½ΠΈΠΆΠ½ΠΈΠΉ рСгистр ΠŸΠΈΡ‚ΠΎΠ½? ΠŸΡ€ΠΎΡΡ‚ΠΎΠ΅ руководство с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ | SEO