Встроенная функция isinstance python

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 พ.ย. 2024

ความคิดเห็น • 18

  • @makseo651
    @makseo651 9 หลายเดือนก่อน

    Спасибо! Спасибо за все уроки.

  • @АнастасияСитко-х9ю
    @АнастасияСитко-х9ю 2 ปีที่แล้ว +1

    Артём, уже писала вам и напишу еще раз. Вы просто супер!

  • @denistalko6585
    @denistalko6585 2 ปีที่แล้ว +1

    Артём, спасибо за отличное объяснение! Всё понятно.

  • @vovergg
    @vovergg 5 ปีที่แล้ว +7

    Отличный урок.

  • @ЕрвандАгаджанян-в3к
    @ЕрвандАгаджанян-в3к 3 ปีที่แล้ว

    Спасибо! Спасибо за все твои видосы!!!

  • @elxanabdulkerimov7721
    @elxanabdulkerimov7721 4 หลายเดือนก่อน

    спасибо

  • @MarsLanding91
    @MarsLanding91 4 ปีที่แล้ว

    Thanks Artem. Great info.

  • @DDDD_D-u9xy
    @DDDD_D-u9xy ปีที่แล้ว +1

    Почему-то при наличии типа bool isinstance(element, str) всё равно выводит bool. Почему. То есть:
    lst = [1, 2, 3, 10.5, "Hi", True, False]
    for element in lst:
    if isinstance(element, (int, float)):
    print(element) ---> всё равно выводит True и False, в том числе

  • @krivalex
    @krivalex 4 ปีที่แล้ว

    Спасибо

  • @ГеоргийРодионов-г9щ
    @ГеоргийРодионов-г9щ 5 ปีที่แล้ว +1

    Спасибо за видео!
    Прошу рассмотреть возможность демонстрации в видео запуска стороннего проекта с github, например github.com/gaphor/gaphas - интересное приложение на python.

  • @MishaKantaria
    @MishaKantaria 5 ปีที่แล้ว +1

    Спасибо за урок!
    Такой вопрос: а есть ли разница как мы проверим переменную?
    Т.е. почему вместо "isinstance(i,...)" просто не использовать "type(i) == ..." ?
    Логика проверки другая но ответ вроде тот-же...

    • @Игорь-ч6ф3и
      @Игорь-ч6ф3и 5 ปีที่แล้ว +1

      isinstance работает не только для конкретного типа, но и для всех потомков объекта (наследуемых классов). Поэтому при проверке типов type лучше вообще никогда не использовать, если только не требуется строго какой то конкретый тип.

    • @leonidalexeev4098
      @leonidalexeev4098 5 ปีที่แล้ว

      @@Игорь-ч6ф3и не понял, что за наследуемые классы. Не могли бы объяснить в чем разница?

    • @Игорь-ч6ф3и
      @Игорь-ч6ф3и 5 ปีที่แล้ว +7

      @@leonidalexeev4098 Например есть словарь, а есть упорядоченный словарь (collections.OrderedDict) и словарь со значениями по умолчанию (collections.DefaultDict). Они умеют делать одни и те же вещи и для пользователя нет разницы какой из них применён. Если пользоваться isinstance то проблем не будет т.к. это всё словари. А если буквально проверять их типы, то можно наткнуться на проблемы в самых неожиданных местах. Это не имеет значения, когда сам пишешь код. Но когда работаешь с библиотеками, оттуда постоянно прилетают объекты специфических типов. Поэтому надо проверять не тип, а умение что то делать, для чего по сути и нужна isinstance.

    • @ineednew9437
      @ineednew9437 4 ปีที่แล้ว

      @@Игорь-ч6ф3и то есть, функция isinstance проверяет супер-класс, основной класс объекта, а type дочерний класс, если такой имеется, который является наследником основного?

    • @Игорь-ч6ф3и
      @Игорь-ч6ф3и 4 ปีที่แล้ว

      @@ineednew9437 isinstance проверяет цепочку предков, а type смотрит только суперкласс.

  • @lizenox
    @lizenox 2 ปีที่แล้ว

    А в эту функцию можно передавать только кортежи или списки тоже?