Python School
82.4K subscribers
2.4K photos
7 videos
570 links
Уроки по Python, которые упростят вам жизнь. Без идиотских туториалов.

Наши мемы для программистов: @conhum

Сотрудничество - @alivian

Канал сотрудничает с рекламным сервисом @Tgpodbor_official

РКН: clck.ru/3G6pBb
加入频道
Модуль csv

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

Файл CSV – это особый вид файла, который позволяет структурировать большие объемы данных.

По сути, он является обычным текстовым файлом, однако каждый новый элемент отделен от предыдущего запятой или другим разделителем. Обычно каждая запись начинается с новой строки. Данные CSV можно легко экспортировать в электронные таблицы или базы данных. Программист может расширять CSV файл, добавляя новые строки.
Модуль subprocess


Модуль subprocess позволяет создавать новые процессы. При этом он может подключаться к стандартным потокам ввода/вывода/ошибок и получать код возврата.

С помощью subprocess можно, например, выполнять любые команды Linux из скрипта. И в зависимости от ситуации получать вывод или только проверять, что команда выполнилась без ошибок.
Модуль fractions

Класс, представляющий собой рациональные числа. Экземпляр класса можно создать из пары чисел (числитель, знаменатель), из другого рационального числа, числа с плавающей точкой, числа типа decimal.Decimal, и из строки, представляющей собой число.
Модуль cmath

Модуль cmath – предоставляет функции для работы с комплексными числами. Помарает производить математические вычисления в вашей программе.
Библиотека dataclasses

Данные можно хранить в разных видах. Мы уже знаем про json, словари и списки. В пайтон есть еще один интересный подход - объектно ориентированный. Он часто намного удобнее и нагляднее. Для самого простого хранения и существует библиотека dataclasses. Она позволяет удобно хранить данные в ОЗУ, объекты создаются минимально возможным количеством строк кода. Ну и согласитесь, смотрится это очень удобно и красиво.
Модуль glob

Модуль glob находит все пути, совпадающие с заданным шаблоном в соответствии с правилами, используемыми оболочкой Unix. Обрабатываются символы "*" (произвольное количество символов), "?" (один символ), и диапазоны символов с помощью []. Для использования тильды "~" и переменных окружения необходимо использовать os.path.expanduser() и os.path.expandvars().
Модуль copy

Операция присваивания не копирует объект, он лишь создаёт ссылку на объект. Для изменяемых коллекций, или для коллекций, содержащих изменяемые элементы, часто необходима такая копия, чтобы её можно было изменить, не изменяя оригинал. Данный модуль предоставляет общие (поверхностная и глубокая) операции копирования.
Модуль glob

Модуль glob находит все пути, совпадающие с заданным шаблоном в соответствии с правилами, используемыми оболочкой Unix. Обрабатываются символы "*" (произвольное количество символов), "?" (один символ), и диапазоны символов с помощью []. Для использования тильды "~" и переменных окружения необходимо использовать os.path.expanduser() и os.path.expandvars().
Модуль os.path

Модуль реализует некоторые полезные функции для имён путей. Для чтения или записи файлов open(), а для доступа к файловой системе модуль os. Параметры пути могут передаваться в виде строк или байтов. Приложениям рекомендуется представлять имена файлов в виде Юникод строк. К сожалению, некоторые имена файлов не могут быть представлены в виде строк в Unix, поэтому приложения, которым необходимо поддерживать произвольные имена файлов в Unix, должны использовать байтовые объекты для представления имён путей.

И наоборот, использование байтовых объектов не может представлять все имена файлов в Windows (в стандартной кодировке mbcs), поэтому приложения Windows должны использовать строковые объекты для доступа ко всем файлам.
Модуль json

JSON (JavaScript Object Notation) это легковесный формат обмена данными. Людям его легко читать и вести в нем записи, а компьютеры запросто справляются с его синтаксическим анализом и генерацией.

В Python есть ряд пакетов, поддерживающих JSON, в частности metamagic.json, jyson, simplejson, Yajl-Py, ultrajson, и json.
Модуль pickle

Модуль pickle реализует мощный алгоритм сериализации и десериализации объектов Python. "Pickling" - процесс преобразования объекта Python в поток байтов, а "unpickling" - обратная операция, в результате которой поток байтов преобразуется обратно в Python-объект. Так как поток байтов легко можно записать в файл, модуль pickle широко применяется для сохранения и загрузки сложных объектов в Python.
Модуль Calendar

В Python есть встроенный модуль Calendar, который содержит полезные классы и функции для поддержки различных операций с календарем. По умолчанию модуль «Calendar» следует григорианскому календарю, где понедельник – это первый день (0) недели, а воскресенье –последний день недели (6).

Для печати календарей и управления ими в модуле Calendar есть 3 важных класса: Calendar, TextCalendar и HTMLCalendar.
Модуль os

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

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

Модуль bisect позволяет вызывать различные методы в списке Python и помогает сохранять список отсортированным. Это особенно полезно, если вы хотите изменить элементы списка, но в то же время сохранить его порядок. Например, если вы хотите вставить элемент в список, метод bisect вернет индекс, в который можно вставить новый элемент таким образом, чтобы после вставки список оставался отсортированным.
Модуль collections

Модуль collections является частью стандартной библиотеки Python и предоставляет удобные и эффективные альтернативы встроенным типам данных, таким как списки, словари и множества. Он содержит множество классов и функций, которые упрощают работу с различными структурами данных, такими как namedtuple, deque, Counter, defaultdict, OrderedDict, ChainMap, UserList, UserDict и UserString.
Генераторы словарей и множеств

Различия между генераторами словарей и списков. Состоит в парах ключ-значение. Такие генераторы удобны для начальной инициализации значений последовательностей.
Списковые включения

Понятие «list comprehensions» это такой способ уместить цикл for, блок if и присваивание в одну строку.

Если возвести в квадрат все элементы списка. Функция map принимает в качестве аргументов функцию и список и применяет функцию к каждому элементу списка.
Модуль array

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

Основное назначение модуля array — предоставление эффективного механизма для хранения базовых данных, таких как бинарные данные или большие массивы чисел, когда стандартные списки не являются наилучшим выбором из-за требований к производительности или памяти.
Модуль itertools

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