🧩 Подробный Python: или как переступить границу знаний
• Хотите чтобы ваш код выглядел качественно и лаконично и говорил о вас, как об опытном разработчике? Тогда давайте окунёмся немного глубже базовых знаний и посмотрим, насколько можно упростить свой код, как сделать его читаемым и не потерять желание возвращаться к своей работе снова.
🧷 https://tproger.ru/articles/podrobnyj-python-ili-kak-perestupit-granicu-znanij/
#Статья
• Хотите чтобы ваш код выглядел качественно и лаконично и говорил о вас, как об опытном разработчике? Тогда давайте окунёмся немного глубже базовых знаний и посмотрим, насколько можно упростить свой код, как сделать его читаемым и не потерять желание возвращаться к своей работе снова.
🧷 https://tproger.ru/articles/podrobnyj-python-ili-kak-perestupit-granicu-znanij/
#Статья
📌 secrets
Модуль random генерирует псевдослучайные числа, а значит их можно предсказать имея определённые данные. Он не может использоваться в криптографии, а secrets — вполне.
Основная фишка в генерации токенов в виде набора байтов, шестнадцатеричных чисел или фрагмента ссылки.
#урок
Модуль random генерирует псевдослучайные числа, а значит их можно предсказать имея определённые данные. Он не может использоваться в криптографии, а secrets — вполне.
Основная фишка в генерации токенов в виде набора байтов, шестнадцатеричных чисел или фрагмента ссылки.
#урок
🧩 Списки в Python: методы и основные операции
• Списки в Python представляют собой упорядоченные изменяемые наборы объектов, пронумерованных от 0. При этом объекты могут быть разными — от целых чисел до строк. Списки могут также хранить в себе списки.
• В статье разберёмся с базовыми принципами списков в Питоне, а также рассмотрим методы работы с ними.
🧷 https://tproger.ru/articles/spiski-v-python-osnovy-i-metody/
#Статья
• Списки в Python представляют собой упорядоченные изменяемые наборы объектов, пронумерованных от 0. При этом объекты могут быть разными — от целых чисел до строк. Списки могут также хранить в себе списки.
• В статье разберёмся с базовыми принципами списков в Питоне, а также рассмотрим методы работы с ними.
🧷 https://tproger.ru/articles/spiski-v-python-osnovy-i-metody/
#Статья
🧩 Обзорный анализ Python веб-фреймворков
• Вместе с ML и Data Science, Web является одним из трёх китов, на которых стоит популярность языка Python. В данном анализе опустим все прелести Python и рассмотрим только веб-инструментарий, то есть фреймворки. Посмотрим, что выгодно отличает их от фреймворков в других языках, и разберём, в чём они конкурируют между собой.
🧷 https://tproger.ru/articles/obzornyj-analiz-python-veb-frejmvorkov/
#Статья
• Вместе с ML и Data Science, Web является одним из трёх китов, на которых стоит популярность языка Python. В данном анализе опустим все прелести Python и рассмотрим только веб-инструментарий, то есть фреймворки. Посмотрим, что выгодно отличает их от фреймворков в других языках, и разберём, в чём они конкурируют между собой.
🧷 https://tproger.ru/articles/obzornyj-analiz-python-veb-frejmvorkov/
#Статья
📌 SQLite
Реляционная база данных внутри файла. У неё только базовые возможности, но она подойдёт для маленьких систем и для тестирования.
Для работы с ней есть встроенная библиотека —
📕 Документация
#урок
Реляционная база данных внутри файла. У неё только базовые возможности, но она подойдёт для маленьких систем и для тестирования.
Для работы с ней есть встроенная библиотека —
sqlite3
. Также SQLite можно использовать и вместе с ORM, такими как SQLAlchemy.📕 Документация
#урок
🔖 Шпаргалка по функциям Python
• Функция в Python — это фрагмент кода для повторного использования, который применяется для выполнения одного связанного действия.
#Шпаргалка
• Функция в Python — это фрагмент кода для повторного использования, который применяется для выполнения одного связанного действия.
#Шпаргалка
🔖 Шпаргалка по типам данных
• Типы данных - это классификация или категоризация элементов данных. Он представляет собой тип значения, которое указывает, какие операции могут быть выполнены с конкретными данными. Поскольку в программировании на Python все является объектом, типы данных на самом деле являются классами, а переменные-экземплярами (объектами) этих классов.
#Шпаргалка
• Типы данных - это классификация или категоризация элементов данных. Он представляет собой тип значения, которое указывает, какие операции могут быть выполнены с конкретными данными. Поскольку в программировании на Python все является объектом, типы данных на самом деле являются классами, а переменные-экземплярами (объектами) этих классов.
#Шпаргалка
📌 Цепочки присваивания значений
• Простое присваивание значений допускает использование цепочек, образованных целевыми ссылками и знаками равенства =. Например, следующая инструкция выполняет групповое присваивание, связывая переменные a, b, c с одним и тем же значением expr: a = b = c = expr.
• При выполнении группового присваивания выражение, находящееся в правой части expr, вычисляется только один раз, независимо от количества целевых ссылок a, b, c, указанных в инструкции. Каждая из целевых ссылок, в порядке следования слева направо, связывается с единственным объектом expr, как если бы несколько операций присваивания выполнялись поочередно.
📕 Документация
#урок
• Простое присваивание значений допускает использование цепочек, образованных целевыми ссылками и знаками равенства =. Например, следующая инструкция выполняет групповое присваивание, связывая переменные a, b, c с одним и тем же значением expr: a = b = c = expr.
• При выполнении группового присваивания выражение, находящееся в правой части expr, вычисляется только один раз, независимо от количества целевых ссылок a, b, c, указанных в инструкции. Каждая из целевых ссылок, в порядке следования слева направо, связывается с единственным объектом expr, как если бы несколько операций присваивания выполнялись поочередно.
📕 Документация
#урок
📌 Context Manager
Это мощный инструмент для управления ресурсами: файлами, которые нужно закрывать, соединениями, блокировками. Если что-то нужно сделать после работы с файлом, лучше всего использовать with.
Оператор вызывает
#урок
Это мощный инструмент для управления ресурсами: файлами, которые нужно закрывать, соединениями, блокировками. Если что-то нужно сделать после работы с файлом, лучше всего использовать with.
Оператор вызывает
__enter__
у объекта, выполняет первоначальные функции, а по окончанию работы — exit, где менеджер может освободить ресурсы, закрыть файл или соединение.#урок
📌 Класс dict() в Python создает словарь.
• Функция dict() создаст словарь, инициализированный из необязательного позиционного аргумента и возможно пустого набора ключевых аргументов.
• Если позиционный аргумент не задан, создается пустой словарь. Если заданы позиционные аргументы и они являются объектами сопоставления ('one': 1), создается словарь с теми же парами ключ-значение, что и объект сопоставления. В противном случае позиционный аргумент должен быть итерируемым объектом. Каждый элемент в массиве должен быть итерируемым с двумя объектами. Первый объект каждого элемента становится ключом в новом словаре, а второй объект-соответствующим значением. Если ключ встречается более одного раза, последнее значение для этого ключа становится соответствующим значением в новом словаре.
• Если заданы ключевые аргументы и их значения добавляются в словарь, созданный из позиционных аргументов, то значение одинакового ключа из позиционного аргумента заменяется значением ключевого аргумента.
• Предоставление ключевых аргументов dict(one=1, two=2, three=3) работает только для ключей, которые являются действительными идентификаторами Python. В противном случае могут быть использованы любые действительные ключи.
📕 Документация
#урок
• Функция dict() создаст словарь, инициализированный из необязательного позиционного аргумента и возможно пустого набора ключевых аргументов.
• Если позиционный аргумент не задан, создается пустой словарь. Если заданы позиционные аргументы и они являются объектами сопоставления ('one': 1), создается словарь с теми же парами ключ-значение, что и объект сопоставления. В противном случае позиционный аргумент должен быть итерируемым объектом. Каждый элемент в массиве должен быть итерируемым с двумя объектами. Первый объект каждого элемента становится ключом в новом словаре, а второй объект-соответствующим значением. Если ключ встречается более одного раза, последнее значение для этого ключа становится соответствующим значением в новом словаре.
• Если заданы ключевые аргументы и их значения добавляются в словарь, созданный из позиционных аргументов, то значение одинакового ключа из позиционного аргумента заменяется значением ключевого аргумента.
• Предоставление ключевых аргументов dict(one=1, two=2, three=3) работает только для ключей, которые являются действительными идентификаторами Python. В противном случае могут быть использованы любые действительные ключи.
📕 Документация
#урок
📌 Функция eval() выполняет строку-выражение с кодом.
• Функция eval() выполняет строку-выражение, переданную ей в качестве обязательного аргумента и возвращает результат выполнения этой строки.
• Аргументами eval() являются строка-выражение expression, которую требуется исполнить и необязательные глобальные globals и локальные locals значения. Передаваемые в функцию глобальные переменные должны быть словарем dict. Передаваемые локальные переменные могут быть любым отображающим объектом.
• Если глобальные переменные указаны, но словарь globals не содержит атрибута __builtins__ данные переданного словаря со значениями будут дополнены данными общего глобального пространства, перед разбором выражения. Таким образом, выражение будет иметь доступ ко всем встроенным модулям.
📕 Документация
#урок
• Функция eval() выполняет строку-выражение, переданную ей в качестве обязательного аргумента и возвращает результат выполнения этой строки.
• Аргументами eval() являются строка-выражение expression, которую требуется исполнить и необязательные глобальные globals и локальные locals значения. Передаваемые в функцию глобальные переменные должны быть словарем dict. Передаваемые локальные переменные могут быть любым отображающим объектом.
• Если глобальные переменные указаны, но словарь globals не содержит атрибута __builtins__ данные переданного словаря со значениями будут дополнены данными общего глобального пространства, перед разбором выражения. Таким образом, выражение будет иметь доступ ко всем встроенным модулям.
📕 Документация
#урок
📌 Класс frozenset() в Python, преобразует в неизменяемое множество.
• Класс frozenset() преобразует строку или любую последовательность(итерацию) "хешируемых" объектов в неизменяемое множество frozenset (неупорядоченная, неизменяемая последовательность с исключением дубликатов элементов в последовательности).
• Если аргумент не указан, возвращается пустой, неизменяемый frozenset.
Примечание:
• Объект является "хешируемым", если у него есть хеш-значение, которое не изменяется в течение его времени жизни. Большинство неизменяемых встроенных объектов Python являются "хешируемыми". Изменяемые контейнеры, такие как списки или словари, не являются "хешируемыми"
📕 Документация
#урок
• Класс frozenset() преобразует строку или любую последовательность(итерацию) "хешируемых" объектов в неизменяемое множество frozenset (неупорядоченная, неизменяемая последовательность с исключением дубликатов элементов в последовательности).
• Если аргумент не указан, возвращается пустой, неизменяемый frozenset.
Примечание:
• Объект является "хешируемым", если у него есть хеш-значение, которое не изменяется в течение его времени жизни. Большинство неизменяемых встроенных объектов Python являются "хешируемыми". Изменяемые контейнеры, такие как списки или словари, не являются "хешируемыми"
📕 Документация
#урок
📌 aoihttp
Это асинхронная библиотека, которая может одновременно составлять запросы и принимать их, то есть выступать клиентом и сервером.
Установка:
#урок
Это асинхронная библиотека, которая может одновременно составлять запросы и принимать их, то есть выступать клиентом и сервером.
Установка:
pip install aiohttp[speedups]
[speedups]
дополнительно устанавливает cchardet и aiodns — библиотеки, ускоряющие работу aiohttp.#урок
📌 Функция delattr() в Python, удаляет атрибут объекта
• Функция delattr() удаляет из объекта указанный атрибут, если объект позволяет это сделать.
• Строка с именем должна быть именем одного из атрибутов объекта. Функция удаляет указанный атрибут, если объект позволяет это.
• Функция delattr() синоним директивы del. Например, delattr(x, 'foobar') эквивалентно del x.foobar.
• Пример удаления атрибута объекта (код на картинке).
📕 Документация
#урок
• Функция delattr() удаляет из объекта указанный атрибут, если объект позволяет это сделать.
• Строка с именем должна быть именем одного из атрибутов объекта. Функция удаляет указанный атрибут, если объект позволяет это.
• Функция delattr() синоним директивы del. Например, delattr(x, 'foobar') эквивалентно del x.foobar.
• Пример удаления атрибута объекта (код на картинке).
📕 Документация
#урок
📌 Requests
Библиотека для составления и отправки HTTP-запросов. Он проще и лучше чем встроенный модуль urllib.
Установка:
#урок
Библиотека для составления и отправки HTTP-запросов. Он проще и лучше чем встроенный модуль urllib.
Установка:
pip install requests
С помощью urllib3, библиотека может работать с Keep-alive соединениями и поддерживает пул HTTP соединений.#урок
📌 Функция compile() компилирует блок кода Python
• Функция compile() возвращает переданный, в качестве аргумента источник, в виде объекта кода, готового к выполнению. Объекты кода, полученные в результате выполнения функции compile() могут быть выполнены с помощью exec() или eval().
• Функция compile() бросает исключение SyntaxError, если скомпилированный источник недопустим и ValueError, если источник содержит нулевые байты.
• Пример компиляции строки кода с последующем выполнением (код на картинке).
📕 Документация
#урок
• Функция compile() возвращает переданный, в качестве аргумента источник, в виде объекта кода, готового к выполнению. Объекты кода, полученные в результате выполнения функции compile() могут быть выполнены с помощью exec() или eval().
• Функция compile() бросает исключение SyntaxError, если скомпилированный источник недопустим и ValueError, если источник содержит нулевые байты.
• Пример компиляции строки кода с последующем выполнением (код на картинке).
📕 Документация
#урок
📌 Кортеж
Та же коллекция, с теми же свойствами, что и список, только неизменяемая. Как создали кортеж, так он и сохранится до конца своих дней.
Часто используется когда мы хотим передать или вернуть какие-то значения и нам не нужно, чтобы их редактировали. Например, при работе с БД, запрос будет возвращать кортеж, поскольку незачем менять коллекцию.
Если внутрь кортежа записать список, то его можно изменить, а кортеж — нет.
#урок
Та же коллекция, с теми же свойствами, что и список, только неизменяемая. Как создали кортеж, так он и сохранится до конца своих дней.
Часто используется когда мы хотим передать или вернуть какие-то значения и нам не нужно, чтобы их редактировали. Например, при работе с БД, запрос будет возвращать кортеж, поскольку незачем менять коллекцию.
Если внутрь кортежа записать список, то его можно изменить, а кортеж — нет.
#урок
📌 Модуль PrettyTable в Python, вывод табличных данных
• Модуль prettytable - полезен при создании простых таблиц и вывода их в терминал или текстовый файл. Он был вдохновлен таблицами ASCII, используемыми в оболочке PostgreSQL.
Импорт данных из курсора базы данных:
• Если данные таблицы хранятся в базе данных, к которой можно получить доступ с помощью модуля имеющего Python DB-API (например, база данных SQLite, доступная с помощью модуля sqlite3), то можно создать экземпляр PrettyTable() с данными, используя объект курсора, например (код на картинке).
📕 Документация
#урок
• Модуль prettytable - полезен при создании простых таблиц и вывода их в терминал или текстовый файл. Он был вдохновлен таблицами ASCII, используемыми в оболочке PostgreSQL.
Импорт данных из курсора базы данных:
• Если данные таблицы хранятся в базе данных, к которой можно получить доступ с помощью модуля имеющего Python DB-API (например, база данных SQLite, доступная с помощью модуля sqlite3), то можно создать экземпляр PrettyTable() с данными, используя объект курсора, например (код на картинке).
📕 Документация
#урок
🧩 Дайвинг в Python: история одного опыта
• В данной статье автор расскажет о своем пути в его изучении. Ввиду того, что «он не волшебник, он только учится», данная статья – лишь субъективное видение ситуации на данный момент.
🧷 Читать статью
#Статья
• В данной статье автор расскажет о своем пути в его изучении. Ввиду того, что «он не волшебник, он только учится», данная статья – лишь субъективное видение ситуации на данный момент.
🧷 Читать статью
#Статья
🧩 Подборка IDE и редакторов кода для Python
• Независимо от того, кто вы: новичок или опытный разработчик качественные IDE или редакторы кода полезны. С ними не нужно тратить много времени на настройку инструментов, и они помогают оптимизировать разработку.
• К тому же постоянные обновления помогают разработчикам следить за инновациями. Пройдёмся по известным IDE и редакторам кода для Python и разберём их плюсы и минусы.
🧷 Читать статью
#Статья
• Независимо от того, кто вы: новичок или опытный разработчик качественные IDE или редакторы кода полезны. С ними не нужно тратить много времени на настройку инструментов, и они помогают оптимизировать разработку.
• К тому же постоянные обновления помогают разработчикам следить за инновациями. Пройдёмся по известным IDE и редакторам кода для Python и разберём их плюсы и минусы.
🧷 Читать статью
#Статья
📌 Модуль transliterate в Python, транслитератор текста
• Транслитерирует (unicode) строки в соответствии с правилами, указанными в языковых пакетах, то есть заменяет все русские буквы на английские и наоборот по правилам транслитерации.
• В этом модуле, для транслитерации букв кириллицы буквами латинского алфавита используются правила, описанные в ISO 9:1995 и ГОСТ 7.79-2000.
• Транслитерация текста с английского на русский, т .е. замена всех английских букв на русские (код на картинке).
📕 Документация
#урок
• Транслитерирует (unicode) строки в соответствии с правилами, указанными в языковых пакетах, то есть заменяет все русские буквы на английские и наоборот по правилам транслитерации.
• В этом модуле, для транслитерации букв кириллицы буквами латинского алфавита используются правила, описанные в ISO 9:1995 и ГОСТ 7.79-2000.
• Транслитерация текста с английского на русский, т .е. замена всех английских букв на русские (код на картинке).
📕 Документация
#урок