Python академия
7.72K subscribers
2.33K photos
5 videos
269 links
Python академия. Учи Python быстро и легко. По всем вопросам @evgenycarter
Download Telegram
Ограничьте использование процессора и памяти

Если вы не хотите оптимизировать память вашей программы или корректировать работу процессора, то можно просто установить лимиты. К счастью, в Python для этого есть специальная библиотека

Подписывайтесь на канал 👉@pythonofff
👍3
collections

В Python есть отличные встроенные типы данных, но иногда они ведут себя не так, как вам бы хотелось.

К счастью, в стандартной библиотеке Python присутствует модуль collections. Это полезное дополнение предлагает расширенные типы данных.

Подписывайтесь на канал 👉@pythonofff
👍3
Задание определенной точности

Иногда нам нужно указать количество знаков после запятой в числе. В такой ситуации мы используем все ту же функцию float(), а после нее — функцию format(), чтобы определить количество десятичных знаков в нашем числе.

В данном примере мы работаем со строкой «6.759104». Нам нужно преобразовать эту строку в число с плавающей запятой и оставить только 4 цифры после запятой.

Подписывайтесь на канал 👉@pythonofff
👍2
Несколько возможных типов возвращаемых значений

Если в вашей функции есть переменная, принимающая значения различных типов, можно использовать типы typing.Optional или typing.Union.

Используйте Optional, если значение будет либо определенного типа, либо исключительно None.

Подписывайтесь на канал 👉@pythonofff
👍4
Легко пропускайте начало итерируемого объекта

Иногда приходится работать с файлами, которые начинаются с неизвестного нам количества бесполезных строк, например, с комментариев. И тут itertools снова предлагает простое решение

Подписывайтесь на канал 👉@pythonofff
1 декабря в Москве пройдет большая IT-конференция Импульс от Холдинга Т1.

В программе — выступления про цифровизацию, архитектуру, чистый код и формирование эффективных продуктовых команд от тех, кто работает над передовыми российскими разработками прямо сейчас:

  Алексей Фетисов - генеральный директор Холдинга Т1
  Павел Гонтарев, управляющий директор VK Тech
  Артем Кострюков, CEO TestIT
  Михаил Степнов, Руководитель центра R&D МТС Big Data/ CDO МТС Маркетолог
  Мария Тихонова, главный инженер по разработке в SberDevices
и другие эксперты.

А в завершении конференции — выступление группы Uma2rman.

Регистрируетесь. Вход бесплатный. 

ЕРИД: LdtCKBQST
18+ Реклама. ООО «Т1»
ОГРН 1197746617419
👍4
Упрощенный вывод данных

Он позволяет вывести строчный массив одной строкой, с разделением запятыми. Нам не нужно использовать .join() и циклы.

Подписывайтесь на канал 👉@pythonofff
👎3👍1🤔1
Абстракция словарей/множеств

С абстракциями списков (list comprehension) вы скорее всего сталкивались, но вот с абстракциями словарей/множеств (dict/set comprehension) — вряд ли. Они просты в использовании и так же эффективны.

Подписывайтесь на канал 👉@pythonofff
👍5👎1
импорт из __future__

Одно из следствий популярности Python — постоянная разработка следующих версий. Новые версии несут в себе новые функции, если, конечно, ваша версия не устаревшая.

Бояться здесь нечего. Модуль_future_ позволяет импортировать в Python функционал будущих версий. Без всяких преувеличений, перед вами — настоящее путешествие во времени или магия.

Подписывайтесь на канал 👉@pythonofff
👍3👎2
Преобразование списка строк

Допустим, у нас есть список, содержащий числа в строковом формате. Чтобы преобразовать все эти элементы в числа с плавающей запятой, мы перебираем список в цикле for. Каждый элемент мы преобразуем из строкового в вещественный. Делается это при помощи функции float().

Мы создаем пустой список number, куда добавим наши числа в формате float. Далее мы используем цикл for для добавления каждого элемента из исходного списка в список number. При этом перед добавлением мы передаем в функцию float() каждый элемент, чтобы преобразовать его из строки в число с плавающей запятой.

Подписывайтесь на канал 👉@pythonofff
2
Как перевернуть список в Python с помощью срезов

Срезы работают аналогично функции range(), которую мы разобрали ранее.

Срез также включает в себе три параметра: start, stop и step.

Синтаксис выглядит следующим образом: [start:end:step].

Если вы хотите вывести все элементы, вы можете использовать один из двух следующих способов

Подписывайтесь на канал 👉@pythonofff
👍5
Используйте объекты, которые поддерживают оператор with

Открыть файл и заблокировать фрагмент кода можно с помощью оператора with, но можно ли сделать это, пользуясь собственным методом? Да, можно реализовать протокол context manager, используя методы enter и exit

Подписывайтесь на канал 👉@pythonofff
👍3
Сила «однострочников» (One-Liners)

Вы устали пробираться между строк кода и теряться в условных конструкциях? Тогда, однострочники Python — это то, что вам нужно.

Подписывайтесь на канал 👉@pythonofff
👍3
Простые структуры данных

Однострочником, также очень просто вызвать инициализацию структур данных в Python. Гарольд Купер, реализовал однострочную древовидную структуру, используя следующий код

Подписывайтесь на канал 👉@pythonofff
👍1
Как удалить пробелы из строки с помощью translate()

Функция translate() чем-то схожа с функцией replace(). Общая цель функций translate() и replace() – заменить определенный символ в заданной строке на другой символ. Однако определённые различия всё-таки есть.

Подписывайтесь на канал 👉@pythonofff
👍2
Как вывести переменную и строку в Python с помощью конкатенации

Если мы обратимся к словарю, то узнаем, что слово конкатенация означает объединение, связывание чего-либо в одну цепочку или ряд.

Поместим строки в двойные кавычки, имя переменной используем без каких-либо добавлений, а для объединения строк и значения переменной применим оператор сложения.

Подписывайтесь на канал 👉@pythonofff
👍4🤮41
Как сделать POST-запрос

Мы используем запрос POST для добавления новых данных в REST API. Данные отправляются на сервер в формате JSON, который выглядит как словарь Python. Согласно документации Fake Store API, у продукта есть следующие атрибуты: title (название), price (цена), description (описание), image (изображение) и category.

Подписывайтесь на канал 👉@pythonofff
👍4
Используйте пустые строки внутри функций, чтобы показать четкие шаги

Иногда сложная функция должна выполнить несколько шагов до оператора return. Чтобы помочь читателю понять логику внутри функции, бывает полезно оставлять пустую строку перед каждым новым шагом.

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

Это помогает читателю ясно увидеть, что возвращает функция.

Подписывайтесь на канал 👉@pythonofff
👍5💩3
JSON-esque

В Python много скрытых фич. Требуется только человек и его время, чтобы выяснить, что все магические операторы и прочее скрыты внутри. Одним из всех других вещей является знаменитый JSON-esque. Вы можете создавать вложенные словари, не создавая явно словари.

Они волшебным образом появляются, когда мы ссылаемся на них.

Подписывайтесь на канал 👉@pythonofff
Как перевернуть список в Python с помощью метода .reverse()

При использовании данного встроенного метода в Python список изменяется сразу же. Это означает, что изменяется исходный порядок данного списка.

Первоначальный порядок элементов исходного списка изменяется и тут же обновляется.

Подписывайтесь на канал 👉@pythonofff
🔥1