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

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

@quiz_python

Вопросы и задачки для подготовки к собеседованиям и прокачки навыков

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

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

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

Другие наши проекты: https://tprg.ru/media
Subscribers
6.92K
Photos
1.4K
Videos
1
Links
127

Showing posts older than #4139 · Back to latest

Older Posts 20 shown
Post #4137 931
  • 👍 1
  • 😱 1
Post #4136 988
len(s)
Возвращает длину (количество элементов) объекта. Аргумент может быть последовательностью (например, строкой, байтами, кортежем, списком или диапазоном) или коллекцией (например, словарём, набором или фиксированным набором).
  • 👍 1
  • 👎 1
Post #4134 1.01K
Из документации Pandas:

DataFrame.dropna(*, axis=0, how=<no_default>, thresh=<no_default>, ...)

Удаляет записи с пропущенными значениями. ...

Параметры:
...
thresh : int, optional

Порог отсечки по пустоте столбца.


В задаче выше удаляться все столбцы, чья заполненность ниже 80%.
GitHub pandas/pandas/core/frame.py at v2.3.1 · pandas-dev/pandas Flexible and powerful data analysis / manipulation library for Python, providing labeled data structures similar to R data.frame objects, statistical functions, and much more - pandas-dev/pandas
  • 👍 2
  • ❤ 1
Post #4133 846
  • 👍 1
  • 👎 1
Post #4132 856
  • 👍 2
  • 👎 1
Post #4131 842
Документация 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).
  • 🤯 1
Post #4128 848
Хеллман Д. Стандартная библиотека 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.
  • 🗿 3
  • ❤ 1
Post #4125 926
Хеллман Д. Стандартная библиотека Python 3, глава 1:

«Отсутствие в словаре значения для переменной missing приводит к тому, что метод substitute() возбуждает исключение KeyError. В то же время метод safe substitute() вместо возбуждения исключения перехватывает его и оставляет в тексте само выражение переменной».

«Ключевым отличием шаблонов от строковых подстановок (интерполяции) и форматирования с помощью метода format() является то, что они не учитывают тип аргументов. Значения преобразуются в строки, а строки вставляются в результат. Опции форматирования полностью отсутствуют. Например, не существует способа управлять количеством цифр, используемых для представления значений с плавающей запятой.

Однако шаблоны обладают тем неоспоримым преимуществом, что использование их метода safe_substitute() позволяет избежать возникновения исключений в тех случаях, когда не все значения, в которых нуждаются шаблоны, представлены
аргументами».
  • 👍 1
  • 👎 1
Post #4124 718
  • 👍 2
  • 👎 1
Post #4123 791
  • 👍 2
  • 👎 2
Post #4121 788
Марк Лутц, «Изучаем Python», часть VI, глава 30:

«Перегрузка операций должна представляться, когда класс естественным образом согласуется с интерфейсами встроенного типа или должен их эмулировать. Коллекции могут имитировать интерфейсы последовательностей или отображений, а вызываемые объекты могут быть реализованы для использования с API-интерфейсом, который ожидает функцию. Однако в целом вы не должны реализовывать операции выражений, если они естественно и логически не подходят для ваших объектов — взамен применяйте нормально именованные методы».

— Point - логичная перегрузка + (сложение координат точек)
— Person - нелогичная перегрузка + (сложение людей не имеет математического смысла), но код работает и возвращает строку.

Этот пример демонстрирует принцип: перегружайте операции, только когда это логично и естественно для ваших объектов.
  • 👍 4
  • 👎 1
Post #4120 810
  • 👍 4
  • 👎 1
Post #4118 827
Документация Python:

«object.__getitem__(self, key)

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

Нарезание перехватывается методом индексирования__getitem__: он вызывается с объектом среза, а не с простым целочисленным индексом, и при необходимости объекты срезов можно передавать или ожидать.
Python documentation 3. Data model Objects, values and types: Objects are Python’s abstraction for data. All data in a Python program is represented by objects or by relations between objects. Even code is represented by objects. Ev...
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →