Никогда ТАК не делай в Python | 5 запретных техник

Поділитися
Вставка
  • Опубліковано 19 тра 2024
  • Пять примеров очень плохого использования обычных возможностей в Python. И мои рекомендации как делать нормально.
    Код тут github.com/mahenzon/forbidden...
    Поддержать выход роликов (зарплата монтажеру)
    - на Boosty boosty.to/mahenzon
    - на Sponsr sponsr.ru/suren/
    - через Tinkoff (любые карты) tinkoff.ru/cf/6kbKWtKhapM
    - через CloudTips pay.cloudtips.ru/p/9a8fa641
    Ссылки на соцсети:
    - Канал в ТГ t.me/Khorenyan - тут в чате обсуждаем технологии и ваш код
    - Паблик в ВК SurenKhorenyan
    - Дискорд / discord
    - UA-cam: / @surenkhorenyan
    - Второй канал на UA-cam: / @surenlife
    - RuTube rutube.ru/u/Suren/
    Метки:
    00:00 Пожалуйста
    01:00 хватит
    06:10 так
    11:20 делать
    18:16 в
    23:02 Python
    29:02 Спасибр
  • Наука та технологія

КОМЕНТАРІ • 45

  • @dmitry-lz1ny
    @dmitry-lz1ny 21 день тому +6

    Если функциональщики смотрели и услышал, что "Не надо использовать лямду", то будет холивар. : )

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому +1

      Ждём холивар! Без лямбды в Python можно прекрасно жить.

    • @user-zx6fq1ig4h
      @user-zx6fq1ig4h 21 день тому +1

      ​@@SurenKhorenyanможно. А нужно ли?)

    • @dmitry-lz1ny
      @dmitry-lz1ny 21 день тому +2

      @@SurenKhorenyan лямбда в любом случае полезна. К примеру воткнуть в тот же sorted().
      А так вряд ли питонисты хоть раз трогали хаскел какой-нибудь.
      Хотя elexir довольно прикольный, но тяжко писать на функционалке.
      Кстате, а будут ли ролики по golang или дальше tour of go не пойдем?

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому +1

      В sorted тоже можно без лямбды. Предвидя вопрос сделал ещё ролик на тему.
      Про Go сначала надо тур закончить.. а потом есть некоторые планы, надо только добраться

    • @user-zx6fq1ig4h
      @user-zx6fq1ig4h 21 день тому +1

      @@SurenKhorenyan Я знаю, что "можно", вопрос звучал по другому

  • @user-nf7qu3fm3n
    @user-nf7qu3fm3n 14 днів тому +1

    Как всегда шикарное видео! Круто все объяснил!
    Есть вопрос про обработку исключений. Предположим, я пользуюсь новым инструментом и не знаю, какие ошибки могут возникать, но точно знаю, что они могут быть. Можно ли в таком случае отлавливать их с помощью Exception? Или лучше потестировать это место в программе на разных данных и обработать как можно больше явных исключений?

    • @SurenKhorenyan
      @SurenKhorenyan  14 днів тому +1

      Круто, спасибо!
      Тут у вас несколько разных вариантов:
      - протестировать приложение 😁 написать тесты, отловить исключения, добавить их обработку
      - запустить как есть, и ловить ошибки в проде, добавлять обработку по мере поступления. Для этого да, придётся какой-то общий обработчик навесить
      - добавить одну общую обработку (немного грустный вариант)

  • @user-zx6fq1ig4h
    @user-zx6fq1ig4h 21 день тому +2

    В целом, видео Сурена достаточно годные(особенно для новичков), но текущее видео получилось крайне неудачным и спорным.

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому

      Спорное это точно. А что неудачного? 🤔

  • @vladimirpodzorov3584
    @vladimirpodzorov3584 21 день тому +2

    А так можно делать?:
    while True:
    try:
    val = input("> ")
    print(int(val)**2)
    except (ValueError, KeyboardInterrupt) as exc:
    if type(exc) == KeyboardInterrupt:
    print("Bye!")
    return
    print("Val err! Try again")

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому +1

      Можно, но зачем? Вы убираете одно условие, чтобы добавить другое?
      И, кстати, проверку на тип нужно делать через isinstance, а не через type () == ...

  • @lifestyletv139
    @lifestyletv139 21 день тому +5

    Красава

  • @MAKS19961204
    @MAKS19961204 21 день тому +1

    Никогда не любил лямбды... Ещё с универа и шарпа. Реально очень мало случаев, когда вот прямо только лямбда может выполнить задачу так как надо и с минимумом геморроя.

  • @justyar5781
    @justyar5781 21 день тому +1

    В первом примере нужен snake case

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому

      Абсолютно точно нужен. Но в данном случае пример для наглядности. Подобные пересечения случаются и при соблюдении стиля именования

  • @whiterabbit6211
    @whiterabbit6211 21 день тому +1

    Сурен запрещает... )

  • @AlexAlex-ui5gz
    @AlexAlex-ui5gz 21 день тому +1

    Как-то даже в голову не приходило так делать, вроде бы очевидные же вещи. Разве такие люди существуют, допускающие такое? Или тут инфа для начинающих?

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому +1

      Скорее для начинающих. во многих туториалах такое можно встретить, не люблю такое

  • @m.manukian
    @m.manukian 19 днів тому +1

    красавчик

  • @hayksardaryan
    @hayksardaryan 21 день тому +1

    а где global?🤔😁

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому

      Оооооо это настолько запретная тема для меня, что я даже не вспомнил! 😅

  • @whiterabbit6211
    @whiterabbit6211 21 день тому +2

    Сурен зануда, навязывает своё представление о "прекрасном" как единственно читаемый вариант. На само деле указывать переменные через запятую нисколько не ухудшает читабельность.

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому +1

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

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому +1

      Кстати, а вторую причину вы ставить под сомнение не будете? Помимо читабельности вопрос ещё в удобстве дальнейшей работы с этими переменными.

    • @black_grizzly
      @black_grizzly 20 днів тому +1

      ​@@SurenKhorenyanвлуплю лайк заместо Тима Питерса

    • @SurenKhorenyan
      @SurenKhorenyan  19 днів тому

      ​@@black_grizzly спасибо!

  • @glaviznin
    @glaviznin 21 день тому +2

    Хрена мальчик зазвездился. Может ты рекомендуешь, а не запрещаешь!?

    • @SurenKhorenyan
      @SurenKhorenyan  21 день тому +2

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

    • @dmitryzagorevskiy507
      @dmitryzagorevskiy507 21 день тому +1

      Так если Сурен не запретить, кто-же другой посмеет попробовать тебе орлу соколову запретить, так и будешь многокодить . На правах шутки )

    • @bel1fegor658
      @bel1fegor658 21 день тому +1

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