⚡️ Приватные значения в Python
В Java, C#, C++ есть понятие, как приватные переменные, то есть к ним нельзя получить доступ из других функций.
В python все атрибуты глобальные, то есть можно получить доступ к любому объекту. Но Python-разработчики договорились об одном соглашении.
Вам не стоит работать напрямую с переменными или функциями, которые начинаются с '
#теори
В Java, C#, C++ есть понятие, как приватные переменные, то есть к ним нельзя получить доступ из других функций.
В python все атрибуты глобальные, то есть можно получить доступ к любому объекту. Но Python-разработчики договорились об одном соглашении.
Вам не стоит работать напрямую с переменными или функциями, которые начинаются с '
_
'
(_var
) или ''
(var). Т
акже не используйте «магические методы» (len, add),
окружённы
е '__'.#теори
я
⚡️ Задачка с собеседования | #Medium
Условие:
На вход идёт непустой список, состоящий из целых чисел. Вам нужно найти самую длинную возрастающую подпоследовательность.
Пример:
longest_seq([8, 2, 9, 3, 5, 8, 7]) -> 4 # 2 3 5 8 или 2 3 5 7
longest_seq([1, 2, 3, 4, 0, 9, 3]) -> 5
longest_seq([5, 4, 3, 2, 1]) -> 1
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
На вход идёт непустой список, состоящий из целых чисел. Вам нужно найти самую длинную возрастающую подпоследовательность.
Пример:
longest_seq([8, 2, 9, 3, 5, 8, 7]) -> 4 # 2 3 5 8 или 2 3 5 7
longest_seq([1, 2, 3, 4, 0, 9, 3]) -> 5
longest_seq([5, 4, 3, 2, 1]) -> 1
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
👍1
⚡️ Быстро поднимаем сайт
CherryPy — это минималистичный веб-фреймворк для Python. Его удобно использовать, например, для создания тестового API.
Установка:
Фреймворку уже около 10 лет, так что он считается стабильным и быстрым. Подробнее обо всём можете почитать в документации.
#миниурок #cherrypy
CherryPy — это минималистичный веб-фреймворк для Python. Его удобно использовать, например, для создания тестового API.
Установка:
pip install cherrypy
Модуль довольно простой, ведь работа с ним такая же, как и при разработке любой ООП программы: требует от разработчика немного времени и строк кода.Фреймворку уже около 10 лет, так что он считается стабильным и быстрым. Подробнее обо всём можете почитать в документации.
#миниурок #cherrypy
⚡️ Задачка с собеседования | #Medium
Условие:
У вас есть строка, вам нужно найти самую длинную подстроку палиндром.
Пример:
longest_palindrome('babad') -> 'aba'
longest_palindrome('cbbd') -> 'bb'
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
У вас есть строка, вам нужно найти самую длинную подстроку палиндром.
Пример:
longest_palindrome('babad') -> 'aba'
longest_palindrome('cbbd') -> 'bb'
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Отлавливаем ошибки
Во время работы могут возникнуть неожиданные ситуации, которые приводят к ошибкам. Обрабатывать их можно с помощью try/catch/else/finally.
Кстати, порядок catch`ей имеет значение Обработка идёт сверху вниз. KeyError наследует LookupException и, в нашем случае, выведется lookup. Достаточно поменять ошибки местами и всё будет работать, как надо.
#теория
Во время работы могут возникнуть неожиданные ситуации, которые приводят к ошибкам. Обрабатывать их можно с помощью try/catch/else/finally.
try
— блок кода, в котором может быть ошибка.catch SomeException as e
— реагирует на ошибку SomeException и записываем её в e. Их может быть несколько для разных ошибок.else
— если никаких проблем не возникло, выполняется код внутри этого блока.finally
— выполняется всегда, независимо, была ошибка или нет.Кстати, порядок catch`ей имеет значение Обработка идёт сверху вниз. KeyError наследует LookupException и, в нашем случае, выведется lookup. Достаточно поменять ошибки местами и всё будет работать, как надо.
#теория
Что выведет код выше?
Anonymous Quiz
5%
2 3
37%
2 3 4
12%
1 2 3
27%
1 2 3 4
12%
Ошибку
7%
Узнать ответ
👍1
⚡️ Задачка с собеседования | #Medium
Условие:
Сколько n-значных чисел можно составить, используя цифры 5 и 9, в которых три одинаковые цифры не стоят рядом?
Пример:
solution(3) -> 6
solution(4) -> 10
solution(5) -> 16
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Сколько n-значных чисел можно составить, используя цифры 5 и 9, в которых три одинаковые цифры не стоят рядом?
Пример:
solution(3) -> 6
solution(4) -> 10
solution(5) -> 16
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Упрощаем работу с SQL
Автор FastAPI придумал SQLModel, который используется для упрощения работы с базами данных. Он объединяет Pydantic и SQLAlchemy.
Установка:
Подробнее обо всех фичах библиотеки можно найти в документации.
#миниурок #sqlmodel
Автор FastAPI придумал SQLModel, который используется для упрощения работы с базами данных. Он объединяет Pydantic и SQLAlchemy.
Установка:
pip install sqlmodel
За счёт этого модуля мы можем упростить взаимодействие с данными из базы данных. А также получаем подсветку код везде и ошибки при несовместимости типов ещё до запуска программы.Подробнее обо всех фичах библиотеки можно найти в документации.
#миниурок #sqlmodel
Что выведет код выше?
Anonymous Quiz
37%
[2, 4]
5%
[4, 8]
10%
[2, 4, 2, 4]
3%
None
37%
Ошибку
8%
Узнать ответ
⚡️ Создаём свой модуль и пакет
В python любой файл считается модулем, и его можно импортировать. Чтобы избежать странного поведения модуля, проверяют __name__.
Пакет — папка с модулями. Она отличается файлом
Подробнее о местоположении библиотек, их выполнении, структуры и внутреннего импорта можете почитать в документации.
#теория
В python любой файл считается модулем, и его можно импортировать. Чтобы избежать странного поведения модуля, проверяют __name__.
Пакет — папка с модулями. Она отличается файлом
__init__.py
, который выполняется при импорте любого пакета. С версии python 3.4 любая папка считается пакетом.Подробнее о местоположении библиотек, их выполнении, структуры и внутреннего импорта можете почитать в документации.
#теория
⚡️ Составляем HTTP запросы
Сервер мы уже написали, теперь можно переходить к клиенту. Для его создания нам нужен httpx.
Установка:
Также, он поддерживает множество фич requests, которые описаны в документации, в разделе Features.
#миниурок #httpx
Сервер мы уже написали, теперь можно переходить к клиенту. Для его создания нам нужен httpx.
Установка:
pip install httpx
Модуль очень похож на requests, поддерживает последовательное и асинхронное выполнение. Также может работать с HTTP/1.1 и HTTP/2.Также, он поддерживает множество фич requests, которые описаны в документации, в разделе Features.
#миниурок #httpx