Python: задачки и вопросы
7.81K subscribers
1.18K photos
1 video
1 file
84 links
Вопросы и задачки для подготовки к собеседованиям и прокачки навыков

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Другие наши проекты: https://tprg.ru/media
Download Telegram
Официальная документация Python:

class slice(start, stop, step=None)
Возвращает объект среза, представляющий набор индексов, указанных в range(start, stop, step). Аргументы start и step по умолчанию равны None.
Юн Цуй - Рецепты Python, Глава 5:

С практической точки зрения любой тип данных, который может использоваться в цикле for, является итерируемым. Как формально проверить объект на итерируемость? Если объект может быть преобразован в итератор при помощи функции iter, он является итерируемым.

[В задаче выше] внешний цикл захватывает итератор из строки, вызывая iter, и каждый вложенный цикл делает то же самое, чтобы получить независимый итератор. Поскольку каждый активный итератор имеет собственную информацию о состоянии, каждый цикл может поддерживать свою позицию в строке независимо от любых других активных циклов.
👍1👎1
🧩 Что выведет код?
Anonymous Quiz
4%
1
16%
2
13%
3
66%
4
👍31
Документация Python:

setattr(object, name, value)
Аргументами являются объект, строка и произвольное значение. [...] Функция присваивает значение атрибуту, если объект это допускает. Например, setattr(x, 'age', 40) эквивалентно x.age = 40.
👍1👎1
🪤 Что выведет код?
Anonymous Quiz
25%
1
27%
2
33%
3
15%
Error
🤨1
Пасхавер Б. Pandas в действии, Часть II, глава 9:

Столбец product определяет группу, к которой принадлежит запись.

Объект GroupBy организует записи в DataFrame в группы на основе данных о продуктах A, B, C в некотором столбце. Предположим, что нас интересует доля одной СТРОКИ в общем объеме ГРУППЫ.
🤷‍♀2🤓1
🧩 Сколько элементов выведет nlargest()?
Anonymous Quiz
56%
1
13%
5
27%
10
4%
0
1👍1
Пасхавер Б. Pandas в действии, Часть I, глава 3:

Метод nlargest возвращает максимальные значения из объекта Series. Первый его параметр, n, задает число возвращаемых записей. Аргумент по умолчанию параметра n равен 5. Библиотека pandas cортирует значения в возвращаемом объекте Series в порядке убывания:

google.nlargest(n = 5)
google.nlargest()
👍1👎1
Какие метод перегрузки операций можно использовать для поддержки итерации в классах?
Anonymous Quiz
9%
__add__, __setitem__
16%
__next__, __del__
67%
__getitem__, __iter___
9%
Никакие из вышеперечисленных
👍2👎1
Марк Лутц, «Изучаем Python», часть VI, глава 30:

Классы могут поддерживать итерацию путем определения (или наследования) метода getitem или iter. Во всех итерационных контекстах Python сначала пытается применить метод iter, возвращающий объект, который поддерживает протокол итерации с помощью метода next: если поиск в иерархии наследования не привел к нахождению метода iter, тогда Python прибегает к методу индексирования__getitem__, многократно вызывая его с последовательно увеличивающимися индексами. В случае использования оператора yield метод next может быть создан автоматически.
👍4
Некогда объяснять, пора вершить судьбы 😱
Три разраба прямо сейчас ищут работу — выбери того, кто получит шанс на достойный оффер. Голосуй прямо сейчас!

Все подробности в «Коде найма».
Please open Telegram to view this post
VIEW IN TELEGRAM
💩4🤡1
Какие методы перегрузки операций обрабатывают вывод?
Anonymous Quiz
73%
__str__, __repr__
7%
__eq__, __iter__
13%
__getitem__, __setitem__
7%
Никакие из вышеперечисленных
👍1👎1
Марк Лутц, «Изучаем Python», часть VI, глава 30:

Методы __str__ и ___герг__ реализуют отображения объектов при выводе. Первый вызывается встроенными функциями print() и str(); второй вызывается, если отсутствует __str__, и всегда вызывается встроенной функцией repr, при эхо-выводе в интерактивной подсказке и для вложенных появлений. То есть метод __repr__ применяется везде, исключая print() и str(), когда определен метод str(). Метод __str__ обычно используется для отображений, дружественных к пользователю, а __repr__ предоставляет для объекта дополнительные детали или форму как в коде.