• Голосовой ассистент на Python (Виталий alfa 2.0)
    +9
    Ну давай с самого начала. Ссылка на «ассистента» битая. Можно было бы и проверить ее работоспособность перед тем, как выкладывать пост на хабр. И большой пипец, который у тебя есть — названия переменных. Это что-то. num123, tts1 и tts (как понять отличие по названию переменной?), cont, an, an45, ca и прочее-прочее-прочее. Что это?.. смысл переменных должен быть понятен сразу по названию, тем более, у тебя не большой прод-код, а небольшая программка. И да, не стоит называть переменные русскими словами, написанными английскими буквами.
    Проверки-проверки-проверки...
    image

    If..elif..elif..elif..elif..elif....
    Есть такая замечательная штука, как функции, списки, кортежи и библиотека random стандартная. Написал функцию send_start_message, в качестве аргумента принимаешь кортеж из трёх элементов — first_message, second_message и cont. У тебя cont заполняется не везде, поэтому можно, где его нет, оставить None и не париться, а в функции устанавливать cont, если он в кортеже не None. Дальше список из кортежей данного типа. И изюминка. Всё работает в 10 строках, а не в овер 70 строках. Ну и вызов — send_start_message(random.choise(hello_messages)). Усё.
    И, кстати, у тебя где-то cont — кортеж, где-то — строка. Почему?
    Для чтения файлов (и не только для этого, конечно же) придумали оператор with, который ты решил не использовать.
    И что у тебя с табуляцией в коде? Там 8 пробелов, там 4, а в одном месте вообще ca улетел на Марс:
    ca на Марсе
    image

    Без комментариев
    image

    Циклы? Не, не слышали. Повторяющийся код — плохо, когда его легко можно заменить циклом.
    В общем, код плох и даже хуже. Но это нормально — учись и всё будет классно.
    Про сам пост как он есть: как будто тебе было насрать на читателя. Ну ты же в журнальчик с охватом в 100 человек статью выкладываешь, а на хабр. Что за глупые шутки про пациента-клиента?
    В прошлом блоке мы сгенерировали рандомное число и занесли его в переменную r, теперь создадим elif`ки и зададим переменные cont, они понадобятся нам позже:

    Что? Зачем cont? что за нагромождение elif'ок? что делает этот код? Ты понять не дал.
    И создадим первую команду «да», помните переменную cont? Так вот она отличает ответ «да» на вопрос «открыть ютуб?», и «да» на вопрос «Включить новости?», если контекста нет, то он просто ответит стандартным ответом.

    Окей, поняли зачем cont. А что за остальные переменные в коде выше? Если уж делаешь переменную, например ca, то будь добр, поясни, что она делает…

    Обобщим. Статья больше похожа на отписку. Будто ты сделал это за минут 20, быстренько скомпилил и го писать статью на Хабр, крутым буду. Это немного не так работает. Код надо прорабатывать, статью надо прорабатывать, всё подробно рассказывать. А ты просто посмотрел видео Хауди, «хочу быть таким же крутым», и вышло в итоге что вышло.
  • Нейросетевой калькулятор для сложения и вычитания не очень больших чисел
    0
    Сеть, бывают случаи, что просто наглухо не видит некоторые цифры.
    Картинка №1
    image

    А перед нулём может, с чего-то, становиться + или -, а то и они оба…