Получи случайную криптовалюту за регистрацию!

Python Academy

Логотип телеграм канала @python_academy — Python Academy P
Логотип телеграм канала @python_academy — Python Academy
Адрес канала: @python_academy
Категории: Технологии , Образование
Язык: Русский
Количество подписчиков: 55.72K
Описание канала:

Python Academy — один канал вместо тысячи учебников
Чат канала: @python_academy_chat
Сотрудничество: @Feel_focus
Рекламодателям: bit.ly/3y1Py4

Рейтинги и Отзывы

4.50

2 отзыва

Оценить канал python_academy и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

1

4 звезд

1

3 звезд

0

2 звезд

0

1 звезд

0


Последние сообщения 2

2023-07-18 17:56:08
Аннотации типов

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

В современных версиях 3.6+ добавилась поддержка аннотации типов переменных, полей класса,аргументов и возвращаемых значений.

#typing
5.1K views14:56
Открыть/Комментировать
2023-07-17 13:18:01
Определение литеральных типов

Когда нам может понадобится определить из полученной строки литеральный тип (строки, числа, списки, кортежи, словари, логические значения и None), мы можем воспользоваться функцией literal_eval() из модуля ast.

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

#ast #literal_eval
5.7K views10:18
Открыть/Комментировать
2023-07-06 14:46:51
Генераторные выражения и списковые включения

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

Если вывести переменные, то видим, что значением переменной l является список, а переменная g хранит в себе объект генератора. И здесь возникает вопрос, что же использовать.

Нужен результат, например в виде списка, прямо сейчас для дальнейшего выполнения программы — используйте генераторы коллекций. 

А если же значения понадобятся еще не скоро или неизвестно, понадобится ли они вообще, то предпочтительнее генераторы, чтобы не занимать лишнюю память и не нагружать систему.

#генераторы
2.6K views11:46
Открыть/Комментировать
2023-07-05 15:59:19
3 трюка с itertools

Сегодня мы рассмотрим несколько функций из довольно полезного модуля, позволяющих эффективно работать с итерируемыми объектами. Начнём с очень простой функции – chain. Она позволяет "склеивать" несколько итерируемых элементов в один.

Далее, accumulate. Эта функция немного похожа на reduce, но вместо того, чтобы давать одно окончательное значение, она последовательно применяет функцию, заданную вторым аргументом (в данном случае min), к каждому последующему элементу по порядку: min(11), min(11, 3), min(11, 3, 9) и так далее.

А для того, чтобы создавать комбинации из элементов выбранного итерируемого объекта, вам понадобится функция combinations. Вторым аргументом можно задать длину этой самой комбинации.

#модули #itertools
3.6K views12:59
Открыть/Комментировать
2023-07-04 13:30:24
Создаем бесконечный итератор

Функция cycle() из itertools принимает на вход итерируемый объект и создает бесконечный итератор, циклически возвращающий элементы данного объекта.

Фишка заключается в том, что когда элементы последовательности заканчиваются, итерация начинается вновь с первого элемента.

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

Мы также можем воспользоваться islice(), который вернет итератор по подмножеству переданного объекта.

#itertools
4.2K views10:30
Открыть/Комментировать
2023-07-04 12:25:06 В IT-компаниях часто внедряют разные системы мотивации сотрудников в поисках лучшей, одна из них — программы LTI (долгосрочный план поощрения). Суть в том, что дополнительное вознаграждение участника основано на показателях, которые говорят о росте стоимости компании.

LTI эффективно синхронизирует интересы бизнеса и сотрудников на долгий срок. Но лучше всего инициатива работает, когда ее адаптируют под ценности компании. Например, в Авито ее сделали более прозрачной и увеличили частоту монетизации. Подробнее о программе и о том, как выбирать работодателя по системе поощрения, можно узнать из интервью HR-директора Авито Ольги Ким.
4.2K views09:25
Открыть/Комментировать
2023-07-04 11:43:41
Разница между == и is

Многие разработчики не понимают разницу этих двух операторов сравнения. Из-за неправильного использования == и is в приложениях могут возникнуть странные ошибки.

Оператор == проверяет равенство значений двух объектов. А оператор is проверяет идентичность самих объектов. Его используют, чтобы удостовериться, что переменные указывают на один и тот же объект в памяти.

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

#тонкости
4.2K views08:43
Открыть/Комментировать
2023-07-03 18:40:30
Бесконечность

Вообще float является крайне интересным типом данных и не перестает удивлять своими особенностями. Про значение Not a Number мы уже писали, а вот сегодня поговорим про infinity.

Строковые литералы 'inf' и 'infinity' можно конвертировать в float, и в результате получается значение бесконечности. Для отрицательной "бесконечности" нужно поставить знак минуса перед словом.

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

#float
4.6K views15:40
Открыть/Комментировать
2023-07-03 17:40:03
Яндекс Практикум разработал курсы, на которых освоить IT-профессию может каждый, даже без опыта.

Кем на них можно стать?

— Веб-разработчиком
Они создают интерфейс сайтов и веб-приложений — то, с чем взаимодействует пользователь.

— Python-разработчиком
Они пишут «мозг» для сайтов, чтобы они правильно реагировали на действия пользователей, а серверы понимали запросы.

— Инженером по тестированию
Они проверяют код разработчиков, ищут в нём ошибки и исправляют их.

— Мобильным разработчиком
Они пишут приложения для устройств с операционной системой Andriod или iOS.

— Java-разработчиком
Они пишут масштабные проекты с миллионами посетителей: маркет-плейсы, стриминги, сайты крупных корпораций.

— Разработчиком на С++
Они создают разные продукты и программы: от беспилотных автомобилей до веб-браузеров, микроконтроллеров, серверов и видеоигр.

Пройдите первый бесплатный урок →
4.4K views14:40
Открыть/Комментировать
2023-07-03 13:17:01
Точка входа

В некоторых языках программирования есть функции main(), с которых начинается выполнение программы. Но в Python весь код исполняется построчно.

Как вариант, многие пишут основную логику программы в обычную функцию main(), а вызывают ее только в условии if __name__ == '__main__'. Здесь стоит объяснить отдельно про то, что такое __name__.

Переменная __name__ — это специальная переменная, которая будет равна '__main__', только если файл запускается как основная программа. А при импорте в качестве модуля выставляется равной имени модуля.

Таким образом, программа корректно заработает, только если запустить ее напрямую. Если импортировать ее как модуль в другой скрипт, то условие не сработает.

#main
4.5K views10:17
Открыть/Комментировать