uk
Feedback
Python: задачки и вопросы

Python: задачки и вопросы

Відкрити в Telegram

Вопросы и задачки для подготовки к собеседованиям и прокачки навыков Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Другие наши проекты: https://tprg.ru/media

Показати більше
6 961
Підписники
-124 години
-47 днів
-5630 день
Архів дописів
photo content

Несмотря на PEP8: «... Избегайте лишних пробелов в следующих ситуациях: ... ... непосредственно перед открывающей скобкой, которая начинает список аргументов вызова функции: spam(1) # верно spam (1) # неверно» Пробел между названием функции и скобкой не уронит программу.

🧩 Выполнится ли этот код?
Anonymous voting

photo content

Документация Python, 3. Data model, 3.3.1. Basic customization:
В разделе "Basic customization" (Базовая кастомизация) описано, что если не определить метод str или repr в классе, то используется реализация по умолчанию, которая возвращает строку с именем класса и адресом объекта в памяти.
Именно это и происходит в вашем примере.

🧩 Что выведет код?
Anonymous voting

photo content

Марк Лутц, "Изучаем Python", том 2, Глава 31: «... Допускается вызывать метод без экземпляра при условии, что метод его не ожидает, и метод вызывается только через класс и никогда через экземпляр. То есть Python будет передавать экземпляр методам только для вызовов через экземпляр. При вызове через класс передавать экземпляр вручную понадобится только в случае, если метод его ожидает: class Selfless: def __init__(self, data): self.data = data def selfless(arg1, arg2): # Простая функция return arg1 + arg2 def normal(self, arg1, arg2): # При вызове ожидается экземпляр return self.data + arg1 + arg2 X = Selfless(2) X.normal(3, 4) # Экземпляр передается self автоматически: 2+(3+4) print(Selfless.normal(X, 3, 4)) # Метод ожидает self: передать вручную print(Selfless.selfless(3, 4)) # Без передачи экземпляра Последний тест работает из-за того, что такие методы трактуются как простые функции, не нуждающиеся в экземпляре. Несмотря на то что в Python З.Х перестают отлавливаться некоторые потенциальные ошибки (что, если программист забыл передать экземпляр?), появляется возможность использовать методы класса как простые функции до тех пор, пока им не передается аргумент экземпляра self и они не рассчитывают на него.

w3schools.com: Встроенные типы данных Выделяют 8 групп, в которых 15 видов данных.
w3schools.com: Встроенные типы данных Выделяют 8 групп, в которых 15 видов данных.

🧩 Какой объект не является базовым типом данных?
Anonymous voting

len(s) Возвращает длину (количество элементов) объекта. Аргумент может быть последовательностью (например, строкой, байтами, кортежем, списком или диапазоном) или коллекцией (например, словарём, набором или фиксированным набором).

🧩 Как узнать длину словаря?
Anonymous voting

Из документации Pandas:
DataFrame.dropna(*, axis=0, how=<no_default>, thresh=<no_default>, ...) Удаляет записи с пропущенными значениями. ... Параметры: ... thresh : int, optional Порог отсечки по пустоте столбца.
В задаче выше удаляться все столбцы, чья заполненность ниже 80%.

🧩 Что выведет код?
Anonymous voting

photo content

Документация pandas: «pandas.melt(frame, id_vars=None, value_vars=None, var_name=None, value_name='value', col_level=None, ignore_index=True) Изменяет представление данных с «широкого» на «длинный», при необходимости оставив заданные идентификаторы. То есть у каждого из трех id появится по три строки (по одной на каждую метрику — height, weight, age).

🧩 Что выведет код?
Anonymous voting

photo content

Хеллман Д. Стандартная библиотека Python 3, глава 1: «Значением атрибута t.pattern является скомпилированное регулярное выражение, но исходная строка доступна через его атрибут pattern: \$(?: (?P<escaped>\$) | # Escape sequence of two delimiters (?P<named>(?a:[_a-z][_a-z0-9]*)) | # delimiter and a Python identifier {(?P<braced>(?a:[_a-z][_a-z0-9]*))} | # delimiter and a braced identifier (?P<invalid>) # Other ill-formed delimiter exprs )» Это сложное регулярное выражение с именованными группами, которое обрабатывает различные варианты синтаксиса переменных в шаблонах Python.

🧩 Что покажет t.pattern.pattern?
Anonymous voting