Python 3.12. Что нового ?

02 Окт 2023 python

Python 3.12. Что нового ?
 

Буквально час тому назад состоялся релиз новой версии Python3.12.0 (финальный релиз) !!!

Основные новые возможности Python 3.12.0 по сравнении с версией Python 3.11

Новые фичи

  1. Более гибкий разбор f-строк(More flexible f-string parsing ) , позволяющий множество вещей, ранее запрещенных (PEP 701).

  2. Поддержка протоколов буфера в коде Python (PEP 688).

  3. Новый API для отладки/профилирования (PEP 669).

  4. Поддержка изолированных подинтерпретаторов(subinterpreters) с отдельными GIL (PEP 684).

  5. Еще более улучшенные сообщения об ошибках.Теперь большинство исключений, вызванных, возможно, опечатками, предлагают пользователю рекомендации.

  6. Поддержка профилировщика Linux perf для отображения имен функций Python в трассировках.

  7. Множество крупных и мелких улучшений производительности(например, PEP 709 и поддержка бинарного оптимизатора BOLT), обеспечивающих ожидаемое общее улучшение производительности на уровне 5%.

Читать далее

Уровни изоляции транзакций в Postgresql

03 Май 2023 postgresql

В этой статье мы рассмотрим как в PostgreSQL реализованы уровни изоляции транзакций , какие аномалии допускаются при разных уровнях изоляции , а какие нет. 

Транзакции - это фундаментальное понятие во всех СУБД. Суть транзакции в том, что она объединяет последовательность действий в одну операцию по принципу «всё или ничего».

Транза́кция (англ. transaction) — группа последовательных операций с базой данных, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще, и тогда она не должна произвести никакого эффекта.

Стандарт SQL определяет четыре уровня изоляции транзакций:

Читать далее

Python. Бинарный поиск в массиве

20 Янв 2023 python Алгоритмы

В этой статье мы рассмотрим Двоичный (бинарный) поиск - один из классических алгоритмов поиска элемента в отсортированном массиве

Бинарный поиск

 

Читать далее

Django Rest Framework (DRF) - Загрузка файлов

01 Сен 2022 python django

Django Rest Framework (DRF) -  Загрузка файлов 

В этой статье рассмотрим как можно загружать файлы с помощью Django Rest Framework

Рассмотрим самый простой случай. У нас есть модель Post , у которого есть поле preview , куда нужно загружать изображения 

 

 

 

Читать далее

Python словари. Введение и основные методы работы с ними

10 Июл 2022 python

Cловари в Python - это неупорядоченный набор пар "ключ-значение"
Но начиная с версии Python3.7 словари являются упорядоченными и они будут выводиться в том же порядке в каком добавлялиPython словари

Читать далее

Введение SQLAlchemy Core и ORM

09 Июл 2022 sqlalchemy

SQLAlchemy - это инструментарий базы данных(database toolkit) для Python. Он предоставляет все возможности которые нам нужны при работе с реляционными базами данных , но при этом весь код будет написан на Python. Не нужно писать голые запросы специфичные для каждой реляционной базы данных и при этом задумываться об экранировании и об других важных вещах. Вместо этого SQLAlchemy позволяет абстрагироваться от используемой базы данных. Написанный код на Pyhon будет работать прекрасно работать с разными БД(Postgresql, MySql, Sqlite). Если вы на старте проекта используете одну БД , но вам нужно переключиться на другую, то вы можете это сделать безболезненно и с минимальными усилиями.

SQLAlchemy состоит из двух отдельных компонентов, известных как Core и ORM. И при этом ORM(Object Relational Mapper) реализован поверх ядра(Core). 

SQLAlchemy Core и ORM
 

Читать далее

Poetry. Управление зависимостями для проектов на Python

20 Апр 2022 python

Когда мы создаем новый проект на Python , то мы вначале создаем виртуальное окружение.
И когда нам нужны внешние проекты , такие как Django, request и другие библиотеки , то устанавливаем их с помощью pip. В итоге мы формируем файл c зависимостями requirements.txt
Но в последних проектах я для управления зависимостями начал использовать Poetry. 


 

Читать далее

Пишем первую программу на Go

16 Июл 2021 go

В этой статье мы напишем и запустим первую программу на Go
Для начала вы должны устанавить компилятор Go на свой компьютер
Далее создадим директорию helloworld и перейдем в эту директорию.

Читать далее

Django-guardian. Добавляем управление разрешениями на уровне объектов

28 Май 2021 python django

Django-guardian. Добавляем управление разрешениями на уровне объектов

Django-guardian. Добавляем управление разрешениями на уровне объектов

 

 

Читать далее

Django permissions. Управление правами доступа

28 Май 2021 python django

Django предоставляет из коробки систему аутентификации и авторизации(permission) пользователей. Эта система позволяет проверять учетные данные пользователей и определять права доступа для пользователей. Ввод логина и пароля - это аутентификация пользователей , а права доступа на редактирование записей , создание новых и удаление - это уже авторизация. Поэтому,с помощью permissions мы указываем какие действия могут выполнять пользователи на сайте , а к каким запрещен доступ.  Django permissions
 

Читать далее

Python HTTPX . HTTP-клиент нового поколения для Python

08 Май 2021 python

В предыдущей статье мы рассмотрели замечательную библиотеку requests для выполнения HTTP запросов.
Но у данной библиотеки есть один недостаток. Он не поддерживает асинхронные HTTP-запросы. 
В этой статье мы рассмотрим новую замечательную библиотеку на Python , который позволяет реализовывать синхронные и асинхронные HTTP-запросы и благодаря этим возможностям он завоевал большую популярность в Python сообществе
 

Читать далее

Тестирование в Django

05 Май 2021 python django Тестирование

При разработке веб-приложений большинство программистов часто избегают тестирования. Я основном говорю о начинающих программистах.  Да и многие , кто уже довольно долго в этой профессии и которые разрабатывают коммерческие приложения довольно часто избегают тестирования , а многие незнакомы с ней.
В этой статье мы будем рассматривать тестирования для веб-приложений , которые создаются с использованием фреймворка Django.Тестирование в Django

Читать далее

Apache Kafka. Введение для начинающих

25 Апр 2021 python

В этой статье я расскажу об основных концепциях Apache Kafka , установим локально с помощью docker compose брокер Apache Kafka , создадим тестовый топик , напишем на python первый продьюсер(producer), чтобы публиковать события в этот топик и первый консьюмер(consumer) , чтобы читать из этого топика  

Читать далее

Python pydantic. Валидация данных

05 Апр 2021 python

В мире веб-разработки обработка и валидация данных играют ключевую роль. Изучая FastAPI  я познакомился с замечательной библиотекой Pydantic. В статье "Введение FastAPI" я описал использование Pydantic в связке с SQLAlchemy. А в данной статье мы рассмотрим все аспекты использования Pydantic, начиная от базовых концепций до более продвинутых техник валидации данных в Python

Читать далее

Паттерн Singleton в Python

03 Апр 2021 python

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

Читать далее

Подписка

Подпишитесь на наш список рассылки, чтобы получать обновления из блога

Рубрики

Теги