Курс Python → Проверка типа данных

При работе с текстовыми документами в специализированной базе, где каждый документ представлен текстом и его вектором в многомерном пространстве, часто возникает необходимость использовать библиотеки для обработки и анализа данных. Одной из таких библиотек является langchain, которая используется для поиска близких по смыслу предложений.

Когда мы запрашиваем у langchain список близких по смыслу предложений и получаем список документов res в преобразованном виде, каждый элемент этого списка может быть представлен в виде кортежа. В таких случаях использование блока try-except с обработкой AttributeError может быть неэффективным, так как тип данных задан автором библиотеки и не всегда ясно, какую ошибку обрабатывать в блоке except.

Вместо использования try-except AttributeError в данной ситуации, целесообразнее предварительно проверить тип данных и структуру возвращаемого значения, чтобы избежать ненужных исключений. Например, можно проверить, содержит ли каждый элемент списка res кортеж, прежде чем обращаться к его элементам.


# Пример проверки типа данных возвращаемого значения
if isinstance(res, list):
    for item in res:
        if isinstance(item, tuple):
            # обработка данных в кортеже
        else:
            # обработка данных в другом формате
else:
    # обработка данных в другом формате

Таким образом, вместо использования try-except AttributeError в ситуациях, когда тип данных задан автором библиотеки, более предпочтительным подходом может быть предварительная проверка структуры данных и использование соответствующих методов и операторов для обработки данных.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Метод rmatmul для пользовательских матриц
  2. Синхронизация доступа к ресурсам
  3. Работа с Requests для HTTP-запросов
  4. Переопределение метода __eq__
  5. Управление экспортом элементов
  6. Принципы Zen of Python
  7. Добавление цвета в консоли
  8. Объединение словарей в Python
  9. Работа с модулем Calendar
  10. Проверка типов с помощью isinstance
  11. Функция map() в Python
  12. Отображение HTML кода в Python
  13. Генераторы списков в Python
  14. Python Менеджер контекста
  15. Метод __int__ в Python
  16. Регистрация на хакатоне
  17. Установка библиотек в Python
  18. Генераторы словарей и множеств
  19. Тестирование модели в PyTorch
  20. Обработка ошибок в Python
  21. CSV строка разделение в Python
  22. Работа с SQLite в Python
  23. Шаблоны Flask: условия и циклы
  24. Поиск частого элемента
  25. Использование defaultdict в Python
  26. Lambda-функция в Python: использование с map() и sum()
  27. Кортеж в Python: создание и использование
  28. Глобальные переменные в Python
  29. Проверка индексов коллекции
  30. Проверка класса объекта
  31. Изменение регистра данных
  32. Подсчет количества элементов в списке
  33. Работа с итераторами через срезы
  34. Лямбда-функции в defaultdict
  35. Многострочные комментарии в Python
  36. Декораторы с аргументами
  37. Генерация случайных чисел Python
  38. Курс Data Scientist в медицине
  39. Работа с файлами в Python
  40. Официальный канал Python в Telegram
  41. Функция findall() для поиска вхождений строки
  42. Рекурсия для обращения строки
  43. Проверка запуска скрипта или импорта модуля
  44. Метод __irshift__ для Python
  45. Списки в Python: основы
  46. Курсы Яндекс Практикум
  47. Создание графики с черепахой

Marketello читают маркетологи из крутых компаний