• Как разрешить импорт в python?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Никто вам импорты не запрещал. Обычно одной лекции не хватает, чтобы научиться программировать. Вам нужно понимать что такое встроенные и сторонние библиотеки. Вам нужно найти инструкцию по установке tensorflow на ваш компьютер. Это тривиальные базовые основы программирования, без таких знаний вам рано решать вашу задачу. Начните изучать язык с учебника.

    На этом ресурсе не готовят индивидуальные персональные уроки и инструкции по освоению базовых тривиальных принципов. Учиться надо самостоятельно.
    Ответ написан
    Комментировать
  • Бот для телеги на python, как лучше оптимизировать?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    И как вы предлагаете провести аудит вашего кода без публикации этого кода?
    Не понятно же что и как вы там храните в памяти.
    Правильная архитектура и логирование легко позволяют отслеживать и находить утечки памяти. Часто потенциальные места видно по коду. Я так понимаю кроме утечек памяти у вас там не мало и других проблем, например ненадежное хранение состояния длительных процессов в случае перезапуска сервиса.
    Если правильно построить архитектуру вашего сервиса и использовать персистентные хранилища (например БД) для промежуточных состояний, то даже утечки в сторонних внешних библиотеках для вас не будут проблемой, поскольку вы всегда можете ограничить ресурсы и безопасно перезагружать сервис на любом этапе его работы при недостатке памяти.
    Ответ написан
  • Почему не работает сайт на GitHub Pages?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    /assets/images/icon-reaction.svg
    Прочитайте чем отличаются абсолютные пути и относительные. Вот это абсолютный. Уберите первый слеш.
    ./js/main.js - тут тоже "./" лишние, но влиять это на работу не дролжно.
    Чего именно вы ожидаете вообще от своего кода?
    Ответ написан
  • Напомните библиотеку/технологию чтобы переводить хеши в мнемоничный человекозапоминаемый вид (что-то вроде "бла-бла-кода")?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    А вы пробовали искать на гитхабе или в гугле прежде чем сюда приходить? Ну вот например https://pypi.org/project/xkcdpass/
    Обычно делается алгоритм, который составляет грамматически верное предложение из рандомных слов. Слова берутся из словаря, где они определены по частям речи. Входной хеш используется в качестве сида для фиксированного алгоритма генерации псевдослучайных последовательностей. Этот алгоритм на базе сида выбирает по очереди слова для шаблона из словаря. Что может быть проще?
    Ответ написан
    1 комментарий
  • Существуют ли модули Arduino со встроенным блоком питания?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Принципиально именно этот корпус? https://aliexpress.ru/item/4001203517149.html?sku_...
    Не поместится.
    А вот этот легко https://aliexpress.ru/item/32413364849.html?sku_id...
    Но там не с сетевого, конечно. Не с 220В
    Ответ написан
  • Как решить ошибку TypeError?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Ошибка тут F:\pythonProject\parcer_tg\parcer_functions.py
    Ответ написан
    Комментировать
  • Почему не выводит посты на сайт Django?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    В комментариях ответили. В контекст передаётся коллекция статей в одной переменной, а в шаблоне итерируется другая.
    Ответ написан
    2 комментария
  • Python не может найти путь к файлу?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Например его там нет.
    Зачем приводить в вопросе всю простыню кода, если можно было попробовать только одну строчку, которая пытается открыть этот файл? Если она не сработает, значит есть проблема, если сработает, то проблема не в файле.
    А у вас ни стек-трейса, ни листинга каталога с указанным файлом неприведено, да вы даже код нормально оформить не сообразили! Это хамство, я считаю.
    Ответ написан
    Комментировать
  • Как написать простой код со светодиодной лентой ардуино?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Оля, здесь задают конкретные вопросы. Наивно ожидать. что под ваш вот этот абстрактный запрос кто-то напишет вам тут готовый скетч или подготовит индивидуальный учебный курс. Это вне формата данного ресурса. Предполагается, что вы самостоятельно изучаете тему, а сюда приходите с конкретными вопросами и непонятками после того, как вам не удалось нагуглить решение и найти ответ в сети.

    Чтобы мой ответ не был совсем бсполезным, могу посоветовать вот этот сайт: https://alexgyver.ru/
    Здесь полно обучающих материалов, рассказано как работать с ардуино, RGB-светодиодами и адресными лентами. У автора сайта есть канал на ютубе с кучей обучающих роликов, а также подборки компонентов, инструментов и прочего. Есть даже проект лампы-будильника, о которой вы спрашиваете: https://alexgyver.ru/dawn-clock/
    Ответ написан
    Комментировать
  • Как исправить AttributeError: 'NoneType' object has no attribute 'find_all'?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    1. Нужно приводить сообщение об ошибке полностью. Всё целиком что пишется в терминал. Там исчерпывающая информация о том, что конкретно и где пошло не так.
    2. Если вы не способны читать сообщения об ошибках, то вам надо учиться на более простых примерах. Сейчас же ваша проблема выглядит так, что вы совершенно не умея программировать и не зная основ пытаетесь с помощью данного ресурса решить свою какую-то задачу.
    3. У вас в коде только два места. где происходит вызов метода find_all. В котором конкретно ваша проблема указано в подробном сообщении об ошибке, которое вы не потрудились привести.
    4. 'NoneType' object has no attribute 'find_all' означает, что вы пытаетесь вызвать метод у объекта, у которого нет этого метода. Видно даже у какого объекта - у Null.
    5. Если вам этих намёков не достаточно, то вам следует взять учебник по питону и начинать учиться с простого. Или обратитесь к фрилансерам за помощью.
    Ответ написан
    Комментировать
  • Как вычленить из текста ФИО на python, при том что конкретных шаблонов нет?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    В общем случае эта задача не решается на 100% по определению.
    Вы говорите, что вокруг фамилий у вас произвольный текст, а это значит, что среди этого текста попадаются слова, которые чем-то похожи на ФИО, но не ФИО, или имя отчество, без фамилии, или что-то вроде "светкин василёк Игоревич". Можно это считать таким экзотическим ФИО, или отчество тут просто отдельно стоит и искать его не надо?
    В любом случае схема решения примерно такая. Если у вас есть знаки препинания, то можно разбить по ним фрагменты текста, ФИО не разделяется знаками препинания (кроме дефиса), но дефис отличается от тире пробелами по бокам.
    Далее у вас есть цепочки слов. Если в цепочке N слов, то в ней, можно сказать, N-2 кандидата на ФИО.
    Каждая трока-кандидат на ФИО может быть проклассифицирована по ряду признаков, свидетельствующих в пользу того, является ли эта тройка ФИО. Осталось только определить набор признаков и веса этих признаков. Каждый признак определяет два показателя: 1) насколько этот признак добавляет шансов тройке быть ФИО; 2) на сколько несовпадение по этому признаку отнимает шансов быть ФИО. Показатели определяются от нуля до 1 и перемножаются. Подбор признаков и их показателей будет настройкой вашего классификатора.
    Тут дальше можно двигаться разными путями.
    Часть детектов вы сможете надёжно определять по окончанию отчества.
    Часть признаков у вас будут словарными словами, которые, по вашему, не могут быть именем и\или фамилией.
    На этом этапе уже будет довольно хорошая детекция. Вопрос что вам важнее, отсутствие false positive, или отсутствие false negative.
    Так же по-разному может повезти с входными данными. Если у вас много "ловушек" в виде разбросанных по тексту бесхозных отчеств, если у вас много очень странных имён... в общем тут вам никто не выдаст идеальное решение. При отсутствии четкого ТЗ результатом будет расплывчатое ХЗ.
    В целом обычно на настройку таких классификаторов под текст на первое время сажают людей. У нас сейчас есть ChatGPT и ему, думаю, вполне можно скидывать наборы имён, чтобы он вычеркивал те, которые вряд ли именами являются. Если вы приняли, что какое-то слово не может являться именем, или фамилией, то такое решение хорошо бы кэшировать, а затем для консистентности придерживаться аналогичного в других случаях.

    Странная у вас задача, сударь. Выглядит как учебная. В этом случае рассуждений вроде приведенных мной здесь хватило бы для успешного ответа на собеседовании.
    Ответ написан
    2 комментария
  • Как сделать подложку(карту) на Python?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Самый простой, быстрый и универсальный путь такой.
    Взять готовый https://github.com/nextgis/nextgisweb
    Развернуть его в докере и у вас практически всё что надо есть. Исходники тоже есть, так что можно допилить.
    Теперь на счет подложки. Всё зависит от того, насколько детальная вам нужна карта и какую площадь вы ею хотите покрыть. Если небольшую площадь или не очень глубокий зумм нужен, то можно просто файловый кэш тайлов локально хранить и отдавать тупо через nginx локально.
    Про массовое скачивание тайлов можно посмотреть вот этот проект sasgis.ru

    Я бы сделал получение тайлов из сети и кеширование в каком-нибудь key-value локальном сторадже. Для нужной территории сделал бы "прогрев" кэша, а саму карту либо nextgis'ом, либо сам на лифлете или аналогичных сверстал.
    Кстати, точки можно и не из базы потдятгивать, а разместить в том же файловом кеше файлы с geo-json порезанные рамками тайлов уровня 8, к примеру. Ну или какой вам удобно там будет. Смотря сколько точек.
    Ответ написан
    Комментировать
  • Как исправить TypeError: Node() takes no arguments?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Оформите код специальным тегом. Неужели не видно, что он в таком виде не читаемый?
    __init__ и init - две большие разницы. Читайте какие служебные методы бывают и что такое dunder-атрибуты.
    Ответ написан
    Комментировать
  • Будут ли два лазерных датчика мешать друг другу?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Обычно световой поток от датчика модулируется неким паттерном или ШИМ, а приёмник учитывает показания только в моменты высокого уровня этой модуляции. Так два или больше датчиков или какие-то блики не будут мешать сигналу. Можно операционным усилителем сравнивать уровни входного сигнала с включенным и выключенным лазером. Это отметёт помехи.
    Правильные лазерные датчики не будут мешать друг другу.
    Ответ написан
    Комментировать
  • Выбрать последний месяц состоящий из слов?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Можно сделать справочную таблицу, где название месяца будет первичным ключом, а номер его в отдельном поле. Выбирать из оригинальной таблицы с джойном и сортировкой как обычно.
    Ответ написан
    Комментировать
  • Как отрисовывать Tileset'ы на Canvas?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Обычно такое получается из-за того, что тайлы сперва масштабируют, а потом размещают на канве. Нужно наоборот, масштабировать уже состыкованную из тайлов катинку.
    При ресайзе крайние пиксели получаются немного не того цвета.
    Короче, надо вставлять тайлы в исходном их размере на холст.
    Ответ написан
    Комментировать
  • Почему не получается установить Docker?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    --dry-run убери=)
    О в комментах уже ответили оказывается.
    Ну, короче, это такой флаг, который позволяет что-то проделать "пешим по-конному", так сказать. Типа всё скачает, всё проделает понарошку, выхлоп будет адекватный как по-настоящему, но без аффекта на реальной системе, без записи.
    Ответ написан
    Комментировать
  • Как перенести базу данных из СУБД Postgresql в MySQL?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Представляете, если бы врачи с таким же уровнем понимания что делают делали трансплантацию органов? Нафаршировал пациента мелко порублеными топором органами донора и ждём выздоровления=).

    Ваш сервис видеоконференций наверно постоянно работает с БД, это значит, что для интеграции вам нужно постоянно делать экспорты. Странное решение дампить и переносить БД целиком. Типа если у вас молоток, то вокруг всё похоже на гвозди?

    Такие вещи обычно делаются в виде микросервисов. На худой конец можно сделать простенького демона, который будет ходить в БД конференций и селектить оттуда только нужные данные, и тут же вставлять в вашу другую базу в нужном формате. Не нужно ничего дампить и ковертировать, хотя наверняка и стандартными командлайнами с небольшой конвертацией SQL-кода регулярками можно добиться аналогичного результата. Но в учтите, это нагромождение непрофильных костылей будет невозможно поддерживать. Прдётся каждый раз сучить рукава и нырять в это говно, чтобы понять почему валится процесс не доходя до конца, или почему незаметно не доходят какие-то записи...

    Если сделать отдельный скрипт синхронизации\. то его можно хорошо про комментировать, задокументировать, обложить тестами и проверками, снабдить внятными и понятными сообщениями об ошибках. Нагромождение пайпов с конвертерами, регекспами и пакетными файлами сделать удобным и стабильным гораздо сложнее.

    Используйте профильные инструменты по назначению и не бойтесь осваивать новые. Такой вот совет.
    А если ближе к вашим попыткам, то смотрите глазами, SQL вполне читаемый, можно по шагам посмотреть что не так. Есть в экспортированном SQL данные? Что это за данные? Куда они вставляются? Есть они там, куда вставляются? Просто проследите поэтапнро.

    Вот про это я и говорил, когда объяснял, что костыльное решение очень трудно дебажить и поддерживать. У вас что-то идёт не так, но вместо того. чтобы разобраться пошагово, вы приходите и заставляете нас тут гадать на кофейной гуще без малейшей информации по теме.
    Ответ написан
    2 комментария
  • Можно ли оптимизировать этот код?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Конечно. Вот этот цикл совершенно не имеет никакого смысла:
    for i in range(len(t)):
        tl.append(t[i])

    Третий цикл тоже не нужен. Вы всё можете делать в одном цикле.
    Или это вы разрешения спрашивали? Никто не запрещает.
    Ответ написан
    2 комментария
  • Правильная и красивая замена if?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Ну так не вызывайте эти функции, просто указывайте, а вызывайте одну, которую получите из словаря этого. Учить питон надо старательнее. Функция - это объект первого рода в питоне. Функцию можно присвоить в переменную, передать в аргумент.
    Ответ написан
    6 комментариев