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

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

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

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

Другие наши проекты: https://tprg.ru/media
加入频道
🧩 Что выведет код?
Anonymous Quiz
4%
1
16%
2
14%
3
66%
4
👍31
Документация Python:

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

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

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

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

google.nlargest(n = 5)
google.nlargest()
👍1👎1
Какие метод перегрузки операций можно использовать для поддержки итерации в классах?
Anonymous Quiz
8%
__add__, __setitem__
16%
__next__, __del__
66%
__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
74%
__str__, __repr__
7%
__eq__, __iter__
13%
__getitem__, __setitem__
6%
Никакие из вышеперечисленных
👍1👎1
Марк Лутц, «Изучаем Python», часть VI, глава 30:

Методы __str__ и ___герг__ реализуют отображения объектов при выводе. Первый вызывается встроенными функциями print() и str(); второй вызывается, если отсутствует __str__, и всегда вызывается встроенной функцией repr, при эхо-выводе в интерактивной подсказке и для вложенных появлений. То есть метод __repr__ применяется везде, исключая print() и str(), когда определен метод str(). Метод __str__ обычно используется для отображений, дружественных к пользователю, а __repr__ предоставляет для объекта дополнительные детали или форму как в коде.
🪤 Что выведет код?
Anonymous Quiz
69%
slice(1, 5, 2)
11%
index(1)
12%
slice(1, 5, None)
8%
Error
👍1👎1
Документация Python:

«object.__getitem__(self, key)

Вызывается для вычисления self[key]. Для типов последовательностей принимаемые ключи должны быть целыми числами. При необходимости они могут также поддерживать объекты срезов. Поддержка отрицательных индексов также необязательна».

Нарезание перехватывается методом индексирования__getitem__: он вызывается с объектом среза, а не с простым целочисленным индексом, и при необходимости объекты срезов можно передавать или ожидать.
🪤 Что выведет код?
Anonymous Quiz
72%
1
13%
2
8%
3
8%
Error
👍4👎1