Just Python
10.2K subscribers
4.39K photos
11 videos
4.38K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
Модуль Statistics

Модуль дает доступ к базовой статистике — не такой глубокой, как в случае SCiPy, но и ее может быть достаточно для анализа данных. Alias этого модуля — st, в некоторых случаях — stc или sts. Но, внимание — не scs, это уже alias для Scipy.stats.

#modules // just python | ChatGPT
Модуль urllib

Для большинства базовых функций хватает и возможностей стандартной библиотеки, которая дает возможность не беспокоиться о зависимостях. Конечно, если нужны дополнительные возможности — то в этом случае стоит обратить внимание уже на что-то другое. Но если речь об HTTP-запросе, то urlib сделает то, что нужно.

#modules // just python | ChatGPT
Модуль datetime

Модуль позволяет создавать типы даты и времени и работать с типичным синтаксисом даты и времени со свойствами, включая год, месяц и день. Это невероятно полезно для переформатирования, анализа и работы с отдельными разделами дат в ваших данных.

#modules // just python | ChatGPT
Модуль zlib

Это универсальное решение для сжатия данных с использованием языка программирования Python. Модуль крайне полезен при работе с пакетами. Наиболее важные функции здесь — compress() and decompress().

#modules // just python | ChatGPT
Четыре типа кавычек

Python позволяет использовать одинарные и двойные кавычки вместе (но строка должна начинаться и заканчиваться одним и тем же типом кавычек). В Python также есть еще два типа кавычек: ''' (тройные одинарные) и """ (тройные двойные). Таким образом, можно использовать несколько уровней кавычек, прежде чем придется заботиться об их экранировании.

#theory // just python | ChatGPT
Красивый вывод списка

Метод join преобразовывает список в строку, рассматривая каждый элемент как строку. Разделителем является та строка, для которой был вызван join. Он достаточно умен, чтобы не вставлять разделитель после последнего элемента.

#theory // just python | ChatGPT
Отображение списка

Чтобы «отобразить» один список на другой можно использовать функцию map(). Это определенно короче, но всё еще выглядит довольно беспорядочно. Более красивый путь это генератор списка, этот код делает абсолютно то же самое, но он короче, чем первый пример, и понятней, чем второй.

#theory // just python | ChatGPT
Функция reduce

Функция reduce работает так же как map, но reduce возвращает лишь одно значение которое получается из последнего выполнения переданной функции. Перед использованием reduce, его необходимо импортировать из модуля functools.

Функция reduce получает на вход:
* Функцию, которая получает более одно значения
* Массив, элементы которого будут поданы на вход функции

Reduce предает на вход функции элемент массива и выход предыдущего выполнения, при первом выполнении в функцию передаются первые элементы массива.

#theory // just python | ChatGPT
Функции any и all

Функции any и all используются вместо операторов OR и AND. Они позволяют сократить ваш код и сделать его более читаемым, в тех случаях когда вы используете большое количество условий в своей программе.

Они оба принимают массив из условий или булевых значений как аргумент, и возвращают одно булево значение.
Any - заменяет собой оператор OR, если в аргументах есть хотя бы одно True, на выходе будет True.
All - заменяет собой оператор AND, если в аргументах будет хотя бы один False, ответ будет False.

Для примера возьмем программу, которая должна вывести "1", если есть одинаковые переменные, и "-1", если таковых нет. Потом она должна проверить равна ли первая переменная второй и вторая третей, если это так вывести "2".

#theory // just python | ChatGPT
Срезы для строк в Python

Это механизм, с помощью которого извлекается подстрока по указанным параметрам. У срезов есть третий необязательный параметр — шаг извлечения. Шаг может быть отрицательным, в таком случае он берется с конца. Из этого вытекает самый популярный способ использования шага — переворот строки. Срезы можно указывать не только через числа, но и с использованием переменных.

#theory // just python | ChatGPT
Выбор случайного элемента из последовательности элементов

Пакет random, входящий в состав стандартной библиотеки, включает в себя множество полезных функций. Среди них хочется особо отметить функцию random.choice(seq). Она позволяет выбрать случайный элемент из индексируемой последовательности. Речь идёт о списках, о кортежах, и даже о строках.

Если попытаться передать функции random.choice(seq) неиндексируемую последовательность, например — словарь, множество или значение числового типа — возникнет ошибка. Ошибка будет выдана и при попытке передачи этой функции пустой последовательности.

#theory // just python | ChatGPT
Использование set для оптимизации различных операций

В соответствии с документаций по Python, класс set([iterable]) возвращает новый объект set (множество), созданный на основе итерируемого объекта.

Как вы, возможно, знаете, множество — это неупорядоченная структура данных (а значит — и неиндексируемая), одной из особенностей которой является тот факт, что в ней нельзя хранить одинаковые элементы.

#theory // just python | ChatGPT
Просмотр атрибутов и методов класса в интерпретаторе Python

Функция dir() возвращает список атрибутов и методов класса. Эту полезную возможность можно использовать для того чтобы получать подобные списки для различных классов при работе в интерпретаторе.

Очень полезная вещь когда используется чужой код без документации, ведь передав в dir тот или иной объект, можно получить список методов для взаимодействия с ним.

#theory // just python | ChatGPT
Проверка строки на палиндром

Простой вариант этого кода проверяет, является ли слово без пробелов и знаков препинания, написанное в одном регистре, палиндромом.

#theory // just python | ChatGPT
Распечатывание ежемесячного календаря

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

#theory // just python | ChatGPT
Превращение списка в одну строку

Если у вас есть список строк и вы хотите объединить все элементы в одну строку, то для этого наверняка будете перебирать каждый элемент в списке и присоединять к нему следующий.
Но есть более быстрый и эффективный способ выполнения той же задачи с помощью одной строки кода, благодаря методу join().

#theory // just python | ChatGPT
Перемешать элементы списка с помощью shuffle

Этот сниппет поможет вам изменить порядок элементов списка на случайный. Обратите внимание на то, что функция shuffle из библиотеки random меняет исходный список.

#theory // just python | ChatGPT
Аргументы которые необязательны

Можно передавать необязательные аргументы через присвоение стандартного значения аргументу.

#theory // just python | ChatGPT
Деструктуризация массива

Деструктуризация (unpacking - распаковка) представляет разложение коллекции (кортежа, списка и т.д.) на отдельные значения. Так, как и многие языки программирования, Python поддерживает концепцию множественного присваивания.

#theory // just python | ChatGPT
Итерации next() в генераторах

В большинстве обычных сценариев в программировании мы можем получить доступ к индексу и получить номер позиции, используя счётчик, который будет просто добавляемым значением

Однако вместо этого можно использовать next(). Next берёт итератор, который будет хранить текущую позицию в памяти и перебирать список в фоновом режиме.

#theory // just python | ChatGPT