Just Python
Canal cerrado
🐍Простое изучение Python. Ссылка: @Portal_v_IT Сотрудничество: @oleginc
Mostrar más9 723
Suscriptores
-524 horas
-117 días
-8930 días
Archivo de publicaciones
9 722
Объединение словарей
Начиная с Python 3.5, стало проще объединять словари.
Если встречаются дублирующиеся ключи – в первом словаре они будут перезаписаны.
#theory // Just Python
9 722
Возврат нескольких значений
Функции в Python могут возвращать более одной переменной без применения словаря, списка или класса.
Здесь возвращается кортеж. С тем же эффектом можно было бы написать return (name, birthdate).
Это нормально для ограниченного количества возвращаемых значений. Но все, что превышает 3 значения, должно быть помещено в класс (data).
#theory // Just Python
9 722
Использование памяти
С помощью sys.getsizeof() можно проверить использование памяти объектом
Огромный список всего 48 байт, потому что функция range возвращает класс, который ведет себя как список. В вопросе памяти range эффективнее, чем использование актуального списка чисел.
#theory // Just Python
9 722
Нарезка списка
Синтаксис нарезания таков:
a[start:stop:step]
Start, stop и step необязательны. У них есть дефолтные значения, которые активируются, если не заполнить параметры:
0 для start;
конец списка для stop;
1 для step.
#theory // Just Python9 722
Форматирование именованных строк
Такую штуку используют нечасто, но если данные уже находятся в словаре, для форматирования именованных строк пригодится.
Вы даже можете использовать функцию locals(), но в последних версиях Python придется обращаться к f-строкам.
#theory // Just Python
9 722
🔴 Тестовый собес на Middle Python с разработчиком из Яндекса завтра вечером!
[+ разбор 50 сложных вопросов в подарок ]
23 сентября (уже завтра) в 19:00 по мск приходи онлайн, чтобы посмотреть на настоящее интервью на Middle Python-разработчика!
Собеседование проведёт Хачатур Саркисян - ведущий разработчик из Яндекса.
Как это будет:
📂 Хачатур задаст разработчику вопросы и задачи, которые могут спросить на реальном собесе;
📂 После каждого ответа респондента ты услышишь подробный комментарий от ментора и поймёшь, чего на самом деле ожидает собеседующий на интервью;
📂 В конце сможешь задать любой вопрос Хачатуру и получить на него развёрнутый ответ.
Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
И ты можешь посмотреть его бесплатно 🔥
Только завтра, в прямом эфире!
🎁 Подарок для всех, кто зарегается на веб — файл с ОТВЕТАМИ НА 50 СЛОЖНЫХ ВОПРОСОВ с Python-собеседований 🔥
Переходи в бот, чтобы попасть на эфир и забрать подарок 👉 @shortcut_py_bot
Реклама
О рекламодателе.
9 722
Nested list comprehensions
Помните основной синтаксис list comprehensions?
[ expression for item in list if conditional ]
Если expression может быть любым валидным выражением Python, оно также может быть и другим list comprehension.
Или, если хотите «разгладить» предыдущую матрицу.
#theory // Just Python9 722
Декорируем функции
Декоратор – это обертка вокруг функции, которая определенным образом изменяет ее поведение. Существуют варианты использования декораторов, и вы, возможно, уже применяли их раньше при работе с такими фреймворками, как Flask.
#theory // Just Python
9 722
Проверка необходимой версии Python
Чтобы ваши пользователи не могли запустить скрипт в несовместимой версии, в коде стоит проверить наличие актуальной версии Python.
#theory // Just Python
9 722
Использование подчеркивания в REPL
Вы можете получить результат последнего выражения в Python REPL с помощью оператора подчеркивания, например, в Python REPL это выглядит следующим образом
#theory // Just Python
9 722
Обязательные аргументы
Для принудительного использования аргументов ставьте символ звездочки перед ними, заставляя все аргументы стать ключевыми
#theory // Just Python
9 722
Замена переменных на месте
Этот аккуратный трюк поможет сэкономить несколько строк кода.
#theory // Just Python
9 722
List Comprehensions
List comprehension может заменить неэстетичные циклы, используемые для заполнения списка. Синтаксис выглядит следующим образом:
[ expression for item in list if conditional ]
Поскольку здесь можно использовать выражения, вам доступна работа с математикой, вызов внешней функции и, наконец, вы сможете использовать «if» для фильтрации списка.
#theory // Just Python9 722
Data classes
Начиная с версии 3.7, Python поставляется с классами данных. У них есть несколько преимуществ по сравнению с обычными классами или другими альтернативами:
- возврат нескольких значений или словарей;
- класс данных требует минимального количества кода;
- возможность сравнения классов данных;
- возможность распечатать класс данных для отладки при помощи repr;
- снижение вероятности ошибок в связи с требованием класса данных type hints.
#theory // Just Python
9 722
Многоточие в Python
Многоточие Python – это последовательность из трех точек, часто используемая в естественных языках. Но чего вы, возможно, не знаете – это еще и валидный объект в Python
>>> ...
# Вывод покажет: Ellipsis
Применяется он преимущественно в операциях нарезки матриц в NumPy. Однако можно использовать его вместо обычного pass в качестве плэйсхолдера в функции, которую еще не реализовали.
#theory // Just Python9 722
Сглаживание вложенного списка
Вложенные списки — частое явление, но иногда нужно "сгладить" их до одного уровня.
Для многоуровневых списков удобнее использовать рекурсивный подход.
#theory // Just Python
9 722
Repost from Находки Программиста
📣 Игровой коврик для мыши с 3D-подставкой для запястья
Цена: ~1300₽
Рейтинг: 5😀
Купили: 58 👤
🖱 Заказать
Игровой коврик для мыши в стиле аниме-панк с мягкой 3D-подставкой под запястье сочетает необычный дизайн и эргономичную поддержку руки, делая рабочее или игровое место комфортнее и ярче.
#AliExpress #коврик #мышь
Находки Программиста
9 722
Список с условием (List Comprehension)
List comprehension — один из самых мощных инструментов Python, позволяющий создавать списки одной строкой кода.
Этот подход не только компактнее, но и быстрее традиционных циклов. Важно не злоупотреблять сложными условиями — код должен оставаться читаемым. Однажды я переписал цикл из 15 строк в одну строку list comprehension, и код стал работать на 30% быстрее.
#theory // Just Python
9 722
Простой способ перевернуть строку
Этот трюк со срезами
[::-1] я использую почти каждый день. Он работает значительно быстрее, чем итерационные методы типа ''.join(reversed(s)), что доказано бенчмарками. Кстати, тот же метод применим и к спискам.
#theory // Just Python9 722
POST запросы и отправка данных
Обратите внимание на параметр
json= вместо data=. Он автоматически сериализует Python-словарь в JSON и устанавливает правильный заголовок Content-Type.
#theory // Just Python