2023-10-12 21:32:13 +03:00
|
|
|
|
## Sets - множества (){}
|
|
|
|
|
- неупоряд. кол-я __*уникальных*__ эл-в `{'item1','item2'}`
|
|
|
|
|
- empty set `emprty_set = set()`
|
|
|
|
|
- Если взять любой список и привести его к `set()`, то перемещает в неупорядочено
|
2023-11-22 17:02:23 +03:00
|
|
|
|
```python
|
|
|
|
|
s = set() # создать множество
|
|
|
|
|
```
|
|
|
|
|
Чтобы проверить, что эл-т есть в множестве исп. `in`
|
|
|
|
|
```python
|
|
|
|
|
nums = {1,2,3,4}
|
|
|
|
|
1 in nums # True
|
|
|
|
|
9 in nums # False
|
|
|
|
|
```
|
2023-10-12 21:32:13 +03:00
|
|
|
|
### Методы
|
|
|
|
|
- __`.add()`__
|
|
|
|
|
```python
|
|
|
|
|
set_list.add (777) # добавление нового эл-та , но нельзя добавлять такой же
|
|
|
|
|
```
|
|
|
|
|
- __`.pop()`__
|
|
|
|
|
```python
|
|
|
|
|
set_list.pop() # случает удаляет эл-т (возвращает)
|
|
|
|
|
```
|
|
|
|
|
- __`.remove()`__
|
|
|
|
|
```python
|
2023-11-22 17:02:23 +03:00
|
|
|
|
set_list.remove(3) # удаление по эл-ту (не возвращает), если эл-та нет, то ошибка
|
2023-10-12 21:32:13 +03:00
|
|
|
|
```
|
|
|
|
|
- __`.discard()`__
|
|
|
|
|
отличие от remove - можно ввести значение, которого нет(не будет ошибки)
|
|
|
|
|
```python
|
|
|
|
|
set_list.discard(43) # удаление по значению
|
|
|
|
|
```
|
|
|
|
|
- __`.clear()`__
|
|
|
|
|
```python
|
|
|
|
|
set_list.clear() -> set() # удаляет все значения во множестве
|
2023-10-13 13:12:24 +03:00
|
|
|
|
```
|
|
|
|
|
### `for`для set
|
|
|
|
|
```python
|
|
|
|
|
list = [6,43,-2,11,-55,-12,3,345] # в отличие от dict не нужер указ. первую переменную "__number__: number"
|
|
|
|
|
num_set = {num**2 for num in list}
|
|
|
|
|
print (num_set) -> {0,121,36,4,9,144...} # те же значение, только в разном порядке, т.к. sets неупоряд.
|
|
|
|
|
```
|
|
|
|
|
- пример с `range()`
|
|
|
|
|
```python
|
|
|
|
|
num_set = {num **2 for num in range(3,11)}
|
|
|
|
|
```
|
|
|
|
|
- пример с словами
|
|
|
|
|
```python
|
|
|
|
|
letter_set = {letter for letter in 'hello'}
|
|
|
|
|
print (letter_set) -> {'h','l','e','o'} # нет одной l т.к. уникальные в sets
|
|
|
|
|
|
|
|
|
|
```
|