flattys

+82
с 2022

канал о программировании

24 подписчика
3 подписки
Программируем на Java. 5-е межд. изд.
Программируем на Java. 5-е межд. изд.
11
Автостопом по Python
Автостопом по Python
33
40 задач на Python
40 задач на Python
11
🖥PostgreSQL 16 изнутри
🖥PostgreSQL 16 изнутри
33
20 маст хев фрагментов кода на python
33

🖥sh: команды терминала прямо из кода

Порой применение стандартных библиотек os и subprocess превращается в головную боль для разработчика. Но есть удобная альтернатива – библиотека sh.

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

22
33

Анаграммы

Интересное применение класса Counter — это поиск анаграмм. Анаграмма — это слово или фраза, сформированные перестановкой букв другого слова или фразы.

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

🖥База данных на минималках

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

Доступ к данным осуществляется с помощью ключей, как и в случае со словарями. А метод shelve.open поддерживает протокол контекстного менеджера, то есть можно не вызывать метод close.

В документации заявляют, что такая база данных является "надежной". Но учитывая, что shelve написан на pickle, его стоит использовать только в совсем маленьких проектах.

🖥Перегрузка операторов

Сначала стоит напомнить, что методы, которые начинаются и заканчиваются двойными нижними подчеркиваниями, называются магическими.

Например, выше в классе Point мы определили str, который отвечает за то, как выводятся объекты класса на экран.

Для перегрузки оператора "+" нужно определить метод add. Он принимает два аргумента, которыми являются, соответственно, операнды в операции сложения.

📌Таким образом, когда разработчик пишет запись p1 + p2, интерпретатор воспринимает это в виде Point.add(p1, p2). Для всех операторов в языке, включая и логические, есть свои магические методы.

Сравнение двух наиболее популярных языков за последнее время

🖥 /🖥

11

🖥Объединение списка строк в одну строку

Метод join() объединяет список строк, заданный как аргумент, в одну строку. В нашем случае мы объединили их, используя в качестве разделителя запятую.

11