• Python как быстро получить число элементов архива tar.gz?

    trapwalker
    @trapwalker Куратор тега Python
    be52, Ну так это ж не бинарноым кодом делается, а в питоне. Я, честно сказать, не залядывал в реализацию библиотеки, что там используется, питоновский код, или бинарный вызывается из библиотеки? Если птоновский. то не удивительно, что долго. Сделайте нужный вам подсчет консольной командой и вызывайте ее из питона, если так быстрее получится.
  • Почему в Python не срабатывает условие?

    trapwalker
    @trapwalker Куратор тега Python
    Сначала ифы поломались, потом форы работать перестанут, ага.
  • Как сделать рандомное число без повторений при вызове функции?

    trapwalker
    @trapwalker Куратор тега Python
    RoMoN, ох. какой кошмар.

    Ок. Я вам предоставил функцию, которая соответствует вашему вопросу. Если вам нужно было не это. значит вы плохо сформулировали.

    Код, что вы тут привели можно сильно упростить.
    Зачем if i in xxx: в цикле, если это всегда True? Ведь вы тоько что взяли это из последовательности! Зачем нужен цикл, если вы дальше первой интерации не ходите?
    Ваша функция будет неявно игнорироваь входящие аргументы, пока прошлые не закончатся.
    Я даже не хочу объяснять насколько это плохо.
    import random
    from random import shuffle
    xxx = ""
    def gener(*args: str):
        global xxx
        if not xxx:
            xxx = list(args)
            random.shuffle(xxx)
    
        print(xxx.pop(0))
    
    gener("Хай", "Пока")  # Пока
    gener("эники", "беники")  # Хай
    gener("ели", "вареники")  # ели
  • Как сделать рандомное число без повторений при вызове функции?

    trapwalker
    @trapwalker Куратор тега Python
    Алан Гибизов, Представьте, что нам необходимо сгенерировать такую последовательность длиной в миллион значений. Первые элементы будут генерироваться быстро, поскольку список уже сгенерированных элементов короткий, а вот последние элементы будут генерироваться очень долго, поскольку нужно будет сделать много попыток каждый раз, прежде чем вам попадётся значение, которое ещё не попадалось.
    Да, если мы используем множество, то амортизированная сложность поиска элемента в нём равна O(1). Но в любом случае первые и последние элементы будут извлекаться с очень разной скоростью, что, согласитесь, может быть неожиданным и неприятным.
    Эту схему можно немного оптимизировать, если взять множество еще не выбранных элементов и каждый случайный выбранный из него элемент излекать из множества.

    Теперь это всё будет работать гораздо быстрее, но нам по-прежнему придётся извлекать элеменнты из списка на каждом шагу, придётся двигать хвост списка или делать какие-то оптимизации на основе хеша... Решение с шафлом остается самым понятным и предсказуемым. Мы тратим время на перемешивание (стандартным проверенным алгоритмом, что важно), затем бысто получаем всю последовательность целиком.

    Ещё один нюанс, который в таких задачах стоит подчеркивать. Фактически это задача по выбору случайной перестановки элементов последовательности. Нужно помнить, что число возможных перестановок достаточно длинной последовательности ГОРАЗДО больше, чем период даже самого лучшего генератора случайных чисел. Это значит, что не все перестановки могут быть сгенерированы даже гипотетически.
    Правда вряд ли автора вопроса должно волновать это замечание.
  • Как сделать рандомное число без повторений при вызове функции?

    trapwalker
    @trapwalker Куратор тега Python
    Ну может ему непременно нужна функция, которая будет генерить случайные числа без повторений, а про замыкания он, к примеру, не догадывается.
  • Как в игровых движках реализованы отскоки?

    trapwalker
    @trapwalker
    Quark, ну кому-то и 2+2 сложно посчитать. Вам "сказали" без обоснования и аргументации?
    Обычно чтобы понять насколько детально нужно моделировать, нужно привести требования к движку. Если речь об игре pong, то там в классической реализации достаточно при столкновении менять знак одной из компонент вектора скорости. Если вам нужно полнотелое моделирование твёрдых нерзрушимых абсолютно упругих объектов, то достаточно в векторной форме записать закон сохранения импульса.
    В точке коллизии у вас получается набор векторов сил, действующий на сталкивающиеся тела. Нужно модифицировать импульсы тел с учетом приложенных сил в рамках длительности коллизии. От этого ваши тела как-то закрутятся и немного сменят направления своего полета.
    Смотря о какой физике речь.
    Вы, конечно, без понимания этого очень "своевременно" взялись за написание собственного движка. Именно с этого надо начинать, как же иначе?=)
    Ну и довольно "мудро" было прийти на этот ресурс со своим вопросом, но при этом вообще не обмолвиться о требованиях к физическому движку. Действительно, тут же все поголовно экстрасенсы.
  • Почему каталог с React-приложением не загружается на GitHub?

    trapwalker
    @trapwalker
    Сергей Кузнецов, да какая разница родной или не родной язык. Уважать надо тех, к кому обращаешься за просьбой, постараться предсотавить максимум информации, ну и не игнорировать, когда её у тебя дополнительную спрашивают.
  • Почему каталог с React-приложением не загружается на GitHub?

    trapwalker
    @trapwalker
    Сергей Кузнецов, да, не понял, тут вы правы. Но а как бы я понял, если он даже структуру каталогов не указал. Этого было бы уже достаточно мне.ч тобы увидеть .git там, где он не должен быть.
    А вы посмотрите на оригинальный вопрос? Там почт никакой информации полезной. Угадать проблему могли лишь те, кто именно на эти грабли именно так и напоролся. Повезло, что вы пришли, но автору вопроса нужен был ответ срочно, но он ничего для этого не постарался сделать. Моя претензия только в этом.
  • Почему каталог с React-приложением не загружается на GitHub?

    trapwalker
    @trapwalker
    starkingdom, какую "эту"? Какова структура каталога с проектом? Какие команды в каких каталогах выполняли, приведите текст игнор-файла.
    Вы думаете тут телепаты сидят, чтобы ваши проблемы угадывать?

    Правила ресурса запрещеют постить содержимое терминала и код скриншотами.
  • Почему каталог с React-приложением не загружается на GitHub?

    trapwalker
    @trapwalker
    starkingdom, так отчего ж вы в таком отчаянии не привели НИКАКИХ, блин, полезных данных о своей проблеме. Кофейную гущу готовить, или как?
    Вы спросили что делать, я ответил что делать.
    Странная предъява
  • Как задать следующий вопрос chatGPT по API?

    trapwalker
    @trapwalker
    Попробуйте тот объём переписки, что влезет в запрос отправить и попросить нейросеть сделать выжимку самого главного из этой переписки. Потом самое главное оставьте и добавьте к этому не поместившуюся часть последующей переписки.
    Ну и так можно делать много раз. Да, при очень длинных диалогах контекст будет со временем деградировать, но с людьми бывает так же, часто мы забываем с чего начали разговор.
  • Как преобразовать команду из консоли в yaml файл для docker?

    trapwalker
    @trapwalker
    winser, я не говорил, что нет. Я говорил, что задача довольно необычная и в моей практике встречалась крайне редко. В тех объёмах, когда это мне было нужно, было сопоставимо по трудоёмкости в=се такие случаи сделать руками.
    Логика скрипта. который бы это делал автоматом довольно проста.
    - Разбиваем командную строку на параметры, например стандартным argparse.
    - получаем готовый контекст, который конвертим отделным алгоритмом в ямл.

    Из непростого - это описать все параметры через argpase как у докера.
    Задачка на пару дней, ну и неделю отладки всего этого добра=)
  • Как заставить программу скопировать ссылку на объявление?

    trapwalker
    @trapwalker
    UsserBel, вы пришли не по адресу. Сходите на фрилансерскую площадку и вам там за вас всё сделают. Здесь могут помочь ответить на конкретные вопросы, помочь с решением. Вам тут помогли, но для ваших навыков этого не достаточно.
  • Как заставить программу скопировать ссылку на объявление?

    trapwalker
    @trapwalker
    RimMirK,
    а по какой причине вывод 0, сударь? Я предложил свой вариант.

    Я уже перечислил все возможные варианты:
    1) в контенте нет нужных данных. Можно проверить сохранив скачанный контент в файл и посмотрев его текстовым редактором.
    2) Среди ссылок нет ни одной, удовлетворяющей приведенному условию. Можно проверить добавив отладочных принтов. Напечатать проверямые ссылки.

    А вы начинаете "охоту на ведьм".
    Хнаете как говорят? "Сначала у вас if'ы поломались, потом for'ы перестали работать."
    Новички всегда предполагают самые нелепые причины для той или иной проблемы, но это просто от недостатка опыта и знаний.
    Универсальный способ решить люую проблему - это разбить ее на части и решать более маленькие проблемы по отдельности.
    В данном случае нужно просто разбить процесс на этапы и проверить промежуточные результаты: что скачалось, какие ссылки там нашлись, чем они отличаются от выбранного условия.
    Всё.
    В данном случае автор вопроса просто игнорирует мой ответ. Чего ему тогда надо - не ясно.
  • Как заставить программу скопировать ссылку на объявление?

    trapwalker
    @trapwalker
    UsserBel, что это за кашу вы тут процитировали?
    росто добавьте отладочные принты в цикле перед условием, сохраните контент, который парсите в файл и посмотрите в редакторе.
    Я это уже говорил, а вы не делаете.
  • Как заставить программу скопировать ссылку на объявление?

    trapwalker
    @trapwalker
    RimMirK,
    судя по тому что он сказал что они есть и следующий кусок кода, можно понять что список не пуст.

    Сказать он может что угодно, процитированный вами кусок кода говорит, что списко пуст.
    Может быть нужных данных нет, может быть селекторы неправильные, может быть условия ложные, но список пуст по факту.
  • Как заставить программу скопировать ссылку на объявление?

    trapwalker
    @trapwalker
    Вы несете какую-то чушь, сударь. Не надо так.
  • Как добавить к основному продукту вспомогательный в django rest framework?

    trapwalker
    @trapwalker
    trickster2019,
    Не могли бы вы скинуть видео/статью/гайд по перестановке о которой вы написали,

    Да какой гайд? Я всего лишь имел в виду, что нужны методы в API для перемещения элементов плоского списка. То есть произвольный элемент нужно поставить между двумя любыми соседними. Для этого достаточно сдеать метод а API, которому будет передаваться номер элемента который двигаем и номер элемента после которого нужно его поставить. И тут можно разными способами реализовать такое. Можно, например, методу просто передать ID продуктаВЗаказе и новый его порядковый индекс, вычисленный на клиенте как среднее арифметическое между двумя другими. По факту перестановки при очень близком размещении индексов (а это будет случаться очень редко и при странных действиях пользователя) надо иногда запускать нормализацию индексов, то есть их перенумерацию с шагом 1000.

    Нет у меня никакого видео и гайда, это довольно очевидное и простое решение.
    также ничего не надо парсить. Зачем что-то парсить вообще? Тем более на мобилке?
  • Как работает кошелек https://t.me/CryptoBot?

    trapwalker
    @trapwalker
    Александр Маджугин, я так в детстве придумал как переделать к запорожцу бензопилу через дурку в крыше, чтобы вертолёт получился. Много думал. Очень детально продумал как управлять таким летательным аппаратом.
    Это называется живая фантазия и к действительности она имеет мало отношения.
    Но я тоже удивлялся почему никто не хочет такое воплотить, ведь бензопила и запорожец есть у многих, а полёт того стоит. Тут очень похожая ситуация. Вы нарисовали у себя в голове странного франкенштейна на тему криптокошелька в телеграмме, но почему-то не подумали, что бота писала не та же команда, которая разрабатывала телеграмм. То, что ключи шифрования называются похожим образом в крипто-кошельке и мессенджере - это не значит, что их можно "подружить" вместе. Это просто наивные фантазии не в тему.
  • Как работает кошелек https://t.me/CryptoBot?

    trapwalker
    @trapwalker
    не сложную схему где в качестве ключа используется например ключ который генерит сам телеграм для шифрования сообщений

    если подумать дольше 10 секунд можно придумать еще и аккаунтные куки

    Александр Маджугин, вы, видимо. совсем не понимаете как работает телеграм, его API и телеграммовские боты.
    Эдак вы, если подумаете как следует, то и летающий велосипед на квадртаных колёсах изобретёте.

    Вы наверно целых 15 секунд думали?