Ответы пользователя по тегу Python
  • Как выбирать файл в правильной поочередности с названием от нуля до максимального?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Нужно определить какой будет самый максимальный кадр. Ну допустим это 9999. Ну и все остальные попереименовывать к чорту типа frame1.png => frame0001.png.

    Для сисадмина-девопса задачка на 5 минут.
    Ответ написан
    Комментировать
  • Как декодировать ascii байтовую строку?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не надо ничего декодировать. Data - это уже массив байтов. Просто запиши в файл.

    >>> data = b'\xff'
    >>> type(data)
    <class 'bytes'>
    Ответ написан
    5 комментариев
  • Как создать диаграмму в python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    По данной картинке нельзя ставить технгическое задание. По виду - это фильтр низкой частоты (ФНЧ). Есть тысячи способов как его реализовать. Даже скользящее среднее дает эффект такого фильтра. При этом оно дешево реализуемо.
    Ответ написан
    Комментировать
  • Как декодировать строку?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тут возможно encoding был применен несколько раз. Декодирование превращается в забавную игру. Но чтобы играть в нее нужно много времени.

    Скажи там после 1xbet какая следующая русская буква должна быть по смыслу?
    Ответ написан
  • Как правильно писать код на питоне со многими функциями?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Обычно делают функцию main, которая принимает строковые параметры типа:

    $ python3 jrbro.py --sortFolder /home/jrbro
    Ответ написан
    Комментировать
  • Как найти строки в файлах и изменить их с помощью python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тебе нужно каждый файл на лету распаковывать читать построчно. Применять к строке замену. И создавать файл-копию и тут-же писать в него и запаковывать обратно.

    Оригиналы архивов потом можно удалить. Лучше всего это делать в разных директориях чтоб не запутаться.
    Ответ написан
    Комментировать
  • Код не видит десятичные числа?

    mayton2019
    @mayton2019
    Bigdata Engineer
    При такой постановке задачи можно оставить только 1 предикат.
    if answer=='18':
    А все остальное всегда идет по линии else. И сравнивать строки даже можно.
    Ответ написан
    Комментировать
  • Как найти разработчиков python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот какой-то ресурс есть https://peps.python.org/

    Насколько я понял Pep - это аналог Java JEPs. Вобщем надо читать нудные рекомендации по внесению предложений. Хороший этап. Это так сразу... чтобы отсесять 99% инноваторов. Те кто выживут - достойны того чтоб их послушать :)
    Ответ написан
    Комментировать
  • Не удаляет данные из бд?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Надо проверить следующее.
    1) Вот эта штука возвращает число удаленных строк
    cur.execute ('DELETE FROM memorycfcb WHERE name = %s', (data,))

    проверь что там хотя-бы не ноль. Вообще - всегда проверяй коды состояний API.

    Любого API. И зимой и летом проверяй. Это просто как чистить зубы по утрам.

    2) Проверь что режим autocommit включен.
    Ответ написан
  • Где ошибка в коде?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Зачем кавычки обрамляют bind-переменные?

    """INSERT INTO memcfc (photo , name , discription) VALUES
            (' ? ',' ? ',' ? '); """ , tuple(data.values()))
    Ответ написан
  • Как рандомно расположить объекты без пересечений?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В промышленности есть задача под названием "Оптимальный раскрой". Не знаю как это делать в Pygame, но это обобщенная постановка для фигур произвольной формы на плоскости. Например - заготовок изделий на листе металла.
    Ответ написан
  • Где применяют python помимо веба и data science?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Питон активно применяется инженерами НЕ из сегмента It. Химиками. Физиками. Металлургами. Строителями.

    Жестокая ирония но часто его выбирают не по желанию а потому что ничего другого бесплатного под рукой не оказалось. Вот отсюда и проистекает его широкое распространение. А по рейтингам tiobe, он перегнал С++ и Java.

    Тоесть реально на вопрос "где" можно ответить - "везде".
    Ответ написан
    Комментировать
  • Ошибка с данными. invalid literal for int() with base 10: ''?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот здесь в скобочках
    if int(i[0])==int(ch_id) and int(mesid)>int(i[1]):
    идет попытка кастовать строку в число десятичной системы но неудачно. Видимо строковый литерал не похож на число.

    Воспроизведение подобной ошибки
    >>> int("555")
    555
    >>> int("555x")
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ValueError: invalid literal for int() with base 10: '555x'
    Ответ написан
    Комментировать
  • Как можно определить что цвет относится к синему (оттенки синего)?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В базисе RGB тоже можно посчитать. Сначала выбирай центр кластера. Эталонный синий с которым хочешь сравнивать. Дальше для всех цветов считай просто декартово расстояние. И если допустим оно будет меньше какой-то величины- то близко к эталону. Вот неполный пример на другом языке. Можно как-то дописать на Python.

    public double getDistance(int color1,int color2) {
            double rv = 0.299 * (getRPixel(color1) - getRPixel(color2));
            double gv = 0.587 * (getGPixel(color1) - getGPixel(color2));
            double bv = 0.114 * (getBPixel(color1) - getBPixel(color2));
            return sqrt(rv * rv + gv * gv + bv * bv);
    }


    Можно выбрать базис HSV, тогда для похожести брать измерение H (Hue) как эталон.
    Но цветовой тон - вращается. Тоесть надо учитывать его как часовую стрелку например без 5 минут 12
    близко к без 15 минут и к 12:05 одинаково.
    Ответ написан
    Комментировать
  • Где ошибка в коде?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Посмотри чистым взглядом на то что ты скачиваешь

    $ wget https://api.bittrex.com/api/v1.1/public/getticker?market=USD-BTC


    может там сайт вообще не работает. Короче учись видеть исходные данные глазами.
    Ответ написан
    Комментировать
  • Как найти словарь в словаре?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот как-то так. Возможно некрасиво.
    >>> dict = {
      ...   "a": "1",
      ...   "b": "2",
      ...   "dict2": {
      ...     "c": "3",
      ...     "d": "4",
      ...   }
      ... }
      >>> 
      >>> for i in dict:
      ...   print(type(dict[i]))
      ... 
      <class 'str'>
      <class 'str'>
      <class 'dict'>
    Ответ написан
    Комментировать
  • Sqlite3.OperationalError: near "слово": syntax error?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В SQL обычно одинарные кавычки используются для строковых литералов.

    DELETE from books WHERE us_books = 'слово' .....

    Двойные там для других задач. Например для приведения идентификаторов к CASE-sensitive виду.- Типа "MyTable"
    Ответ написан
    Комментировать
  • Как писать код? Монолитный .py файл. Или лучше раздельно, импортируя свои же .py, .json, .txt файлы, как в гитхабе?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Большинству людей глубоко наплевать на то как выглядит код программиста. До тех пор пока он - одиночка-фрилансер.

    Как только вы начинаете работать в паре с кем-то, или в команде, или просто хотите поделиться чем-то в форумах или в GitHub - вот с ЭТОГО момента начинается публичный дискурс вокруг внешнего вида.

    Есть такое отдельное понятие - "Эстетика программного кода". Оно - неформализуемо и никто не может дать четких определений какой код эстетичен а какой - нет. Я считаю что только долгий опыт работы в команде с другими людьми позволяет определить для себя эстетику.

    Но стартовой точкой в этом вопросе может быть чтение книги Роберта Мартина - Чистый код. Там описаны достаточно простые и очевидные вещи типа как оформить комментарии к коду или сколько строк должна иметь функция. Но начать с нее стоит. По крайней мере чтобы в приличном обществе выглядеть джентльменом.
    Ответ написан
    Комментировать
  • Как начать парсинг csv с нужной строки?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если csv.reader поддерживает интерфейс iterable то можно сделать фильтр как тут пишут https://learnpython.com/blog/map-filter-reduce-python/

    filter(function, iterable)
    Ответ написан
    Комментировать
  • Чем асинхронность лучше многопоточности для чат-бота?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Насчет чят бота не скажу. Вообще скажу.

    Если задача связана с вычислением численных метдов например. Или рендерингом 3D. Или крипто-майнингом. Или нейро-сетей - где
    CPU -> 100%, I/O -> 0% то тогда тебе прямая дорого в мультипоточность (мультипроцессность). Количество тредов расчитывается обычно по формуле = количество ядер (иногда АЛУ/Threads) умноженное на коєффициентик. Подбирается экспериментально для конфигурации и среды исполнения. У меня для Java-11 выходило что на 4 ядра Core-i3 надо было 5 вычислительных потоков.

    Если в задаче главным дирижёром является канал I/O а нагрузка на расчет малаая (парсер) - то используют технологи асинхронизма. Это когда ваши вычисления подписываются на события I/O и 80% времени ничего не делают а только ждут события от I/O. При благоприятных условиях хендлеры могут потреблять вообще 0% ресурсов. Нет событий. Поэтому таких хендлеров можно поднять очень много. Пример - акторные технологии. Хендлер. Актор. Горутина. Пример 10 000 акторов обслуживается 10 потоками исполнителями.
    Ответ написан
    2 комментария