Skip to content

fix(questions): update some chapters #32

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 7 additions & 8 deletions questions.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

## Последовательности

- [Docs Python (Sequences)](https://docs.python.org/3/reference/datamodel.html#sequences)
- [Docs Python (Sequence Types — list, tuple, range)](https://docs.python.org/3/library/stdtypes.html#sequence-types-list-tuple-range)

### Что такое последовательность

Последовательностью в Python называется итерабельный объект, который поддерживает эффективный доступ к элементам с использованием целочисленных индексов через специальный метод `__getitem__()` и поддерживает метод `__len__()`, который возвращает длину последовательности.
Expand Down Expand Up @@ -108,8 +111,6 @@ lst.reverse()
# Теперь lst = [9, 5, 4, 3, 2, 1, 1]
```



### Что такое диапазон

Диапазоны – неизменяемые последовательности чисел, которые задаются началом, концом и шагом. Представлены классом range (в Python 2 – xrange; range в Python 2 – это функция, которая возвращает список).
Expand Down Expand Up @@ -149,9 +150,11 @@ for x in [1, 2, 2, 2, 3, 3, 1]:

### Как сравниваются последовательности

- [Docs Python (Value comparisons)](https://docs.python.org/3/reference/expressions.html#value-comparisons)

Две последовательности равны, если они имеют одинаковый тип, равную длину и соответствующие элементы обоих последовательностей равны.

Последовательности одинаковых типов можно сравнивать. Сравнения происходят в лексикографическом порядке: последовательность меньшей длины меньше, чем последовательность большей длины, если же их длины равны, то результат сравнения равен результату сравнения первых отличающихся элементов.
Последовательности одинаковых типов можно сравнивать. Сравнение происходит в лексикографическом порядке — элементы сравниваются слева направо. Если найдены отличающиеся элементы — результат сравнения определяется ими. Если все сравниваемые элементы равны, тогда последовательность меньшей длины считается меньшей.

## Множества и отображения

Expand Down Expand Up @@ -197,7 +200,7 @@ for x in [1, 2, 2, 2, 3, 3, 1]:
- `s.add(element)` – добавить новый элемент в множество
- `s.remove(element)` – удалить элемент из множества; если такого элемента нет, возникает исключение KeyError
- `s.discard(element)` – удалить элемент из множества, если он в нём находится
- `s.pop()` – удалить из множества и вернуть произвольный элемент; если множество пустое, возникает исключение KeyError
- `s.pop()` – удалить **произвольный элемент** из множества и вернуть его; если множество пустое, возникает исключение KeyError
- `s.clear()` – удалить все элементы множества.

### Как происходит проверка множеств на равенство
Expand Down Expand Up @@ -594,10 +597,6 @@ for key in {'foo': 1, 'bar': 2}:
process_key(key)
```

### Как итерировать словарь по парам ключ-значение

Метод словаря `.items()` возвращает генератор кортежей `(key, value)`.

### Что такое сопрограмма

Сопрограмма (англ. coroutine) — компонент программы, обобщающий понятие подпрограммы, который дополнительно поддерживает множество входных точек (а не одну, как подпрограмма) и остановку и продолжение выполнения с сохранением определённого положения.
Expand Down