Python на примерах
1.39K subscribers
411 photos
6 videos
145 links
Короткие уроки Python на примерах
Download Telegram
Понимание журнала в NumPy

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

Чтобы использовать метод (), нам нужно импортировать модуль NumPy, используя приведенный ниже оператор.

Функция () принимает входной массив в качестве параметра и возвращает массив с логарифмическим значением элементов в нем.
👎1
Комплексные числа

Python преобразует числа в комплексные с помощью функции complex(x, y), получая комплексное число по стандартной формуле x + i * y, где x, y — вещественные числа, а i — мнимая единица (i в квадрате равно -1). Для лучшей работы пригодится модуль cmath.
👍2
Функция oct() в Python

Функция Python oct() используется для преобразования целого числа в восьмеричную строку с префиксом «0o».

Результатом функции oct() является строка. Мы также можем передать объект в качестве аргумента, в этом случае объект должен иметь реализацию функции index (), которая возвращает целое число.
👍1
Модуль Itertools

Itertools — это встроенный модуль в Python, который содержит функции для создания итераторов для эффективных циклов. Короче говоря, он предоставляет массу интересных инструментов для работы с итераторами! Некоторые из них предоставляют значения для бесконечного диапазона, поэтому к ним следует обращаться только с помощью функций или циклов, которые в конечном итоге перестают запрашивать дополнительные значения.
👍5
Применение функций по условиям

Знакомый тернарный оператор A = Y if X else Z можно использовать и с функциями. Пример на картинке.
👍15🫡1
Вычисление размера объектов

Так как в python всё является объектами, мы можем вычислить размер практически у всего с помощью sys.getsizeof().

Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные данные сборщика мусора. Хотя все встроенные объекты вернут верный размер, в общем случае это не будет так для пользовательских объектов.
👍8❤1
Что выведет код выше
Anonymous Quiz
31%
list
24%
tuple
31%
<class 'generator'>
14%
None
🤔37👍10👎3❤1
Функция reduce

Модуль functools раскрывает функциональные возможности Python. Например, в нём есть интересная функция reduce, последовательно применяющая функцию-аргумент к элементам списка, возвращая при этом в итоге единичное значение.

В примере мы используем функцию для последовательного сложения элементов списка.
👍14🤡4
⚡️ Обфускация кода

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

Установка: pip install pyarmor

Запускается этот инструмент из терминала. Обо всех командах можно почитать в документации, нам же потребуется только obfuscate.

Вводим pyarmor obfuscate file.py и файл станет таким же непонятным, как на картинке выше. Если стало интересно, советую начать изучение тут.
👍26🔥2❤‍🔥1❤1🥰1
⚡️Переводим текст в речь

gTTS
— модуль для взаимодействия с API преобразования текста в речь google translate.

Установка: pip install gTTS

Вы можете попробовать этот модуль, введя gtts-cli 'hello' --output hello.mp3 в терминал.

Но, помимо cli, модуль доступен и в python. Просто создаёте gTTS(text), сохраняете с помощью save('filename.mp3') и получаете тот же самый результат.
👍28❤3👾1
Вычисление разницы во времени

Ещё одна прекрасная функция dateutil — это модуль relativedelta, способный рассчитывать время. Вы с лёгкостью можете добавить или вычесть произвольные единицы времени из экземпляра datetime или вычислить разницу между двумя экземплярами datetime.

Эта функция куда гибче datetime.timedelta, потому что вы можете задавать более длинные, чем день, интервалы, например месяц или год.
👍9🤯6👏4👎1🤩1
Случайные числа с модулем random

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

В первом примере мы получаем случайное число от 1 до 10, при этом последняя переданная единица — шаг, т. е. если бы мы передали не её, а например двойку, случайное число бы искалось из диапазона 1, 3, 5 и т. д.

С документацией можно ознакомиться по ссылке.
👍19❤1🔥1
Выводим положение курсора

Для вывода положения курсора получаем его координаты из функции get_position().

Далее собираем бесконечный цикл и выводим положение.

Это можно использовать для хранения движения курсора по экрану.
👍20❤1💘1
Numerizer

С помощью функции numerize из пакета numerizer можно перевести текст в числа, то есть, например, из строки "five" получить число 5. К сожалению, работает только с английским языком.
❤‍🔥18👍4❤1
Функция sleep()

Чтобы понять смысл функции sleep(), разберём простой пример. Три строки выводятся в определённый промежуток времени — задержку обеспечивает sleep. Сперва выводится первая строка, затем идёт функция sleep(), которая задерживает вывод на 2 секунды. Точно так же для следующего print() мы используем sleep на 5 секунд.

На картинке этого не видно, но после запуска кода строки выводятся через указанные интервалы времени.
👍17
Использование функции enumerate()

Функция enumerate() добавляет счетчик в итерируемый объект, в котором используется метод iter , возвращающий итератор. Он может принимать последовательные значения индекса, начиная с нуля. И выдаёт ошибку IndexError, когда индексы больше недействительны.

Типичный пример использования функции enumerate() — создание цикла по списку с отслеживанием индекса. Для этого можно использовать переменную в качестве счетчика. Но функция enumerate() позволяет сделать то же самое намного удобнее.
🔥9👍2
Как создать словарь Python

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

Наиболее важный отличительный признак словаря — фигурные скобки {}. Кроме того, для каждого элемента словаря нужно разделение ключа и значения двоеточием :.

Приведенная ниже переменная fruit — словарь. Вы можете получить доступ к любому элементу из этого словаря, поместив ключ в квадратные скобки []. То же самое можно сделать еще и с помощью метода .get().
👍12❤1
Генерация случайных данных

Пакет faker позволяет создавать случайные данные, которые затем можно использовать, например, для тестирования программ. К примеру методы name, address, job и email генерируют соответственно случайное несуществующее имя, адрес, должность и почту.

Разнообразие методов довольно широкое, с полным спектром можно ознакомиться в документации.
❤‍🔥16👍10❤1
Деструкторы

В дополнение к конструкторам в Python также существуют и деструкторы. В каждом конкретном классе деструктор можно переопределить с помощью метода __del__, который вызывается автоматически при удалении объекта.

Переопределение деструкторов на практике встречается редко, но на случай каверзных вопросов на собеседованиях стоит знать об этой особенности.
👍12❤1🥴1