Python tricks | Хитрости Питона
5.67K subscribers
2.21K photos
26 videos
1 file
2.52K links
Здесь вы найдете лучшие практики и приёмы, которые используют опытные программисты.

Сотрудничество: @SIeep_Token

Мы на платформе: https://telegram.me/python_tricks

Ссылка на канал: https://t.me/+QayZf6ccsQllZTYy
Download Telegram
⚡️ ¡Hola, amigos!⚡️

28 мая в 12:00 приглашаем на большой очный митап в Санкт-Петербурге! Если присутствовать не сможете, подключайтесь к трансляции. Ссылка придёт после регистрации.

Ссылка на канал: @threeamigostalk

Этот Three Amigos Talk представляем в расширенном формате. В первой части поговорим на тему интегрированной безопасности в разработке. Во второй — рассмотрим вопросы Golden-образа и линейного процесса поставки изменения на продакшн, а также обсудим, как сохранить безопасную среду в компании в периоды турбулентности. Завершим митап небольшой дискуссией со спикерами и ответами на вопросы.

Спикеры:
▫️ Александр Киверин, CTO «Гибкий и безопасный Software Development Life Cycle»
▫️ Алексей Шарапов, Head of DevOps «Shift Left Security»
▫️ Дмитрий Евдокимов, Founder и CTO «Shift Left Everywhere Security в каждый дом»
▫️ Владимир Муравьев, DevOps Tech Lead «Использование концепции Golden Image в девелопменте и поставках»
▫️ Мария Киверина, HR Lead «Не волнуйся, у нас ты в безопасности»

Эксперт митапа:
▫️ Тимур Исхаков, руководитель блока разработки

Когда: 28 мая в 12:00
Формат: офлайн, Санкт-Петербург + онлайн. Регистрация и подробности докладов здесь → по ссылке
#3
Проверка, существует ли файл или каталог

Функция Path exists() возвращает True, если путь существует, в противном случае возвращает False.
Что выведет код?
Anonymous Quiz
43%
4
26%
5
24%
Ошибку
7%
1
#4
Открытие и чтение содержимого файла

Мы можем использовать функцию Path open(), чтобы открыть файл. Он возвращает файловый объект, такой как встроенная функция open().
Функция divmod() в Python

Функция divmod() в Python используется для деления двух входных чисел.

Числа не должны быть сложными и могут быть записаны в любом формате, таком как десятичный, двоичный, шестнадцатеричный и т.д.
Что выведет код?
Anonymous Quiz
54%
Hello
26%
'Hello'
9%
(Hello)
11%
('Hello')
Функция ascii() в Python

Функция ascii() в Python возвращает строковое представление объекта. Эта функция внутренне вызывает функцию repr() и перед возвратом строки представления экранирует символы, отличные от ASCII, с помощью экранирования x, u или U.

Python ascii() является встроенной функцией и принимает единственный аргумент. Этот аргумент может быть любым примитивным типом данных или объектом. Мы также можем передать в качестве аргумента list, dict или tuple. В этих случаях метод ascii() будет вызываться для элементов коллекции, и будет возвращено строковое представление.
Что выведет код?
Anonymous Quiz
24%
True
60%
False
7%
None
10%
Error
#1
Генератор списка

Генераторы списка в языке программирования Python являются мощным инструментом по работе с разноплановыми совокупностями данных. Чаще всего эти конструкции используются для более удобного взаимодействия со списками, обеспечивая не только их создание, но и модификацию. Несмотря на то, что в некоторых случаях без генераторов можно обойтись, их грамотное применение значительно упрощает реализацию сложных алгоритмов.

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

Следующий пример демонстрирует создание в Python списка чисел при помощи генератора. Переменная i является ссылкой на текущий элемент объекта data. Функция range здесь принимает два аргумента, которые устанавливают границы для сгенерированной последовательности целых чисел. Вывод информации на экран происходит через метод print.
#2
Генератор с условием

Один из часто используемых способов генерации списков в Python — с условием. Предыдущий пример демонстрировал довольно тривиальный подход к заполнению списка при помощи генератора. Данные конструкции языка Python позволяют задавать определенные условия для выполнения такой операции. Например, существует задача перенести в список только четные числовые значения из созданной ранее выборки range.

В дело вступает команда if, после которой следует небольшая инструкция, сообщающая о том, что каждый элемент последовательности должен выполнять некоторое условие. В данном случае необходимо возвращать 0 в результате вычисления остатка от целочисленного деления. Как можно увидеть, прошедшие проверку цифры были занесены в список.
Что выведет код?
Anonymous Quiz
3%
[6]
8%
6,9
53%
[6,9]
36%
[9]
#3
Генерация вложенных списков

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

Данный код демонстрирует создание двумерной матрицы с размерностью 3×3 при помощи генератора двумерного списка Python. Элементами этой числовой последовательности стали цифровые значения из методов range, как и в предыдущих примерах. Переменные i и j пошагово увеличиваются в циклах на единицу и перемножаются между собой. Функция print служит для визуального отображения сгенерированного набора данных на экран компьютера.