В Python по сравнению с другими языками программирования очень много ситуаций, вызывающих исключения.
lst = [1, 2, 3]Обратимся к несуществующему элементу списка:
print(lts[4])После выполнения кода выведется ошибка (исключение):
IndexError: list index out of rangetry-except. Она имеет следующий синтаксис:try:
# код, вызывающий исключение
except:
# обработка ошибки
try следует размещать код, который может содержать исключение. Если вдруг при выполнении этого кода возникнет исключительная ситуация, то выполнение кода не остановится, а перейдет в код блока except. В данном блоке следует прописать вывод сообщения, максимально точно описывающего суть возникшей ошибки.Если же при выполнении блока
try никаких исключительных ситуаций не случилось, то полезный код просто выполнится, а код из блока except - нет.try поместим код с потенциальной ошибкой. А в блоке except укажем вывод в консоль сообщения 'error: elem is not exist':lst = [1, 2, 3]
try:
print(lst[4])
except:
print('error: elem is not exist')
После выполнения кода выведется:
'error: elem is not exist'try-except стиль написанного вами кода должен измениться. Теперь все места, в которых может возникнуть исключительная ситуация, нужно оборачивать в try, а в блоке except прописывать реакцию на это исключение.@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤5🔥2
Итак, задача: напишите функцию, которая принимает на вход несортированный связный список и удаляет из него все дубликаты.
Задачу можно решить как минимум 2 способами
def remove_duplicates(first):
if not first:
return
nextone = first
while nextone:
runner = nextone
while runner.next:
if runner.next.val == nextone.val:
runner.next = runner.next.next
else:
runner = runner.next
nextone = nextone.next
return first
Функция
remove_duplicates принимает на вход один аргумент first, в который мы передаем начало списка.Далее создаем переменную
nextone, которая инициализируется значением first. nextone используем для перемещения по списку, она указывает на текущий элемент. То есть эта переменная является первым указателем. Переменная runner — второй указатель. Этот подход к удалению дубликатов в связанном списке использует хеш-таблицу, чтобы отслеживать пройденные уникальные значения.
def remove_duplicates(list_head):
if not list_head:
return
seen = set()
current = list_head
prev = None
while current:
if current.val in seen:
prev.next = current.next
else:
seen.add(current.val)
prev = current
current = current.next
return list_head
Функция
remove_duplicates принимает на вход один аргумент list_head, в который мы передаем начало списка. Она проверяет, пуст ли список. Если да, она возвращает результат и завершает работу. Если в списке содержится хотя бы один элемент, функция начинает их обрабатывать.Далее создаем множество
seen, которое будем использовать для отслеживания уникальных значений связанного списка. @pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥5❤4
Держите мощный гайд о работе с FastAPI, параллельно объясняется много важных концепций, используется библиотека Pydantic, создаётся Docker-контейнер
Туториал поможет разобраться:
• Для чего используется FastAPI
• Как написать простейшее приложение на FastAPI
• Как применять Pydantic в FastAPI
• Как работать с базой данных из FastAPI
• Как делать запросы к базе данных через паттерн репозиторий
• Что такое роутер в FastAPI
• Как развернуть FastAPI приложение через Docker
• Как развернуть FastAPI приложение на реальный сервер в облаке
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍12❤4😢1
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3🤩1
Python — интерпретируемый язык программирования. Он не конвертирует свой код в машинный (в отличие от С и С++). Вместо этого, Python-интерпретатор переводит код программы в байт-код, который запускается на виртуальной машине Python (PVM).
Если интересно, как работает Python под капотом — welcome)
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤10🤩1
Если готовитесь к собесам 📈
>2320 вопросов с собеседований, по анализу данных, машинному обучению, cv, статистике, python. Вопросы разбирают сеньоры, которые сами проводят собесы и дают примеры правильных ответов
Можно сильно упростить прохождение собесов, если заранее изучить популярные вопросы 💼
Только реально вдумывайтесь в решение, а не просто заучивайте - иначе не сработает 😅
А здесь собрана целая папка для тех, кто любит машинное обучение и готовится к собесу.
>2320 вопросов с собеседований, по анализу данных, машинному обучению, cv, статистике, python. Вопросы разбирают сеньоры, которые сами проводят собесы и дают примеры правильных ответов
Можно сильно упростить прохождение собесов, если заранее изучить популярные вопросы 💼
Только реально вдумывайтесь в решение, а не просто заучивайте - иначе не сработает 😅
А здесь собрана целая папка для тех, кто любит машинное обучение и готовится к собесу.
Telegram
Machine learning Interview
Разбираем вопросы с собеседований по Machine Learning, Data Science, Deep Learning и Нейронным сетям, Python.
Вопросы - @notxxx1
@itchannels_telegram -🔥лучшие it каналы
РКН: clck.ru/3FmwRz
Вопросы - @notxxx1
@itchannels_telegram -🔥лучшие it каналы
РКН: clck.ru/3FmwRz
👍8❤2😱1
👁️ EyeGestures: eye tracking software
EyeGestures - это библиотека для отслеживания движений глаз с использованием веб-камер и камер на телефонах..
Основная цель - обеспечить доступное отслеживание глаз без необходимости приобретения дорогостоящего оборудования.
Для установки и запуска EyeGestures можно использовать pip:
▪ Github
@pythonl
EyeGestures - это библиотека для отслеживания движений глаз с использованием веб-камер и камер на телефонах..
Основная цель - обеспечить доступное отслеживание глаз без необходимости приобретения дорогостоящего оборудования.
Для установки и запуска EyeGestures можно использовать pip:
python3 -m pip install eyeGestures▪ Github
@pythonl
👍20❤6🔥6
Затрагивается практически всё, связанное с ООП:
Свойства / атрибуты класса
├╼ @staticmethod
├╼ @classmethod╰╼ @propertyНаследование
├╼ Определение одного родителя├╼ Перегрузка├╼ Множественное наследование├╼ Mixins├╼ Полиморфизм├╼ super().__init__() — Инициализация из родительского класса├╼ Хешированные объекты╰╼ Абстрактные классыКомпозиция
╰╼ Наследование vs КомпозицияДескрипторы (`__get__()`, `__set__()`, `__del__()`)
├╼ No Data Descriptor╰╼ Data Descriptor@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33🔥7❤4😁1😢1
Aiohttp — это, безусловно, самый активный проект aio-libs, который, возможно, является основным вариантом использования asyncio.Aiohttp представляет собой HTTP-клиент и сервер с поддержкой Web-Sockets и таких тонкостей, как промежуточное ПО для обработки запросов и подключаемая маршрутизация.О том, как грамотно работать с HTTP-запросами при помощи
Aiohttp и пойдёт речь в этой полезной статье. @pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤8🔥2🎉1
This media is not supported in your browser
VIEW IN TELEGRAM
🗂️Context menu: a python library to create and deploy cross-platform native context menus.
Python библиотека для разработки и настройки пользовательских контекстных меню.
▪ Github
@pythonl
Python библиотека для разработки и настройки пользовательских контекстных меню.
▪ Github
@pythonl
👍17🔥3❤2
В этом полезном туториале мы рассмотрим, как управлять репозиториями и реализовать базовый рабочий процесс git с помощью библиотеки GitPython.
Если конкретнее, то мы разберём:
Все эти знания можно использовать для автоматизации работы с репозиториями, освобождая время для остальных вещей
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤4🔥3
Все примеры и домашние задания построены с уклоном на сетевое оборудование.
Для тех, кто хочет автоматизировать повседневные задачи и заняться программированием, но не знает, с какой стороны подойти.
@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥7❤1