• Метод list() в Python возвращает непустой список. Почему так?

    trapwalker
    @trapwalker Куратор тега Python
    Ну почему сразу "нельзя"? Смотря чего вы хотите этим добиться=) Но да, хак довольно грязненький.
  • Какие данные нужно передавать в блок зарядки, чтобы активировать режим Fast Charge?

    trapwalker
    @trapwalker
    gbg, Написано же "не по назначению"
    Видимо топикстартер хочет взять от USB зарядки с QC3, к примеру, 12 вольт. Это разумное желание, но я бы не колхозил своё решение, а взял ы готовую микросхему, которая наверняка для этого есть. Или вот ниже в моём варианте решения есть готовые шнурочки. которые умеют сказать заряднику, что от него требуется.
  • Как сделать маску в far manager?

    trapwalker
    @trapwalker
    Ну вы бы хоть показали что пробоваи. А-то звучит как задание без попытки самостоятельного решения.
  • Как исправить ошибку File "main.py"?

    trapwalker
    @trapwalker
    Алексей Борисов,
    -- Коллеги, помогите. Что делать? Решил вырезать аппендицит другу, взял ножик, тыкаю, но друг орёт и кожа не протыкается.
    -- нужно взять хирургический скальпель.
    -- окей, но не помогло! Скальпель не нашел, но наточил нож и привязал друга. Проткнуть удалось, но кровь теперь хлещет и не могу нащупать апендицит.

    Вот так вот нынче каждый первый учится программировать телеграм-ботов и нейронные сети.
  • Некорректный перенос строк сообщения, в чём дело?

    trapwalker
    @trapwalker Куратор тега Python
    Именно об этом я и говорил. На разных платформах абзац может быть представлен по-разному. Вот почитайте.
    Из-за этого зоопарка современное кроссплатформенное ПО реагирует на разные способоы перевода строки. У вас смешались переоды строки и, возможно, возвраты каретки из файла, при его итерировании они тоже включаются в строки, и те управляющие символы, что вы добавили вручную в начале каждой строки.
    Правильно будет в вашем случае читая файлы отбросить в строках абзацы, а также отбросить возможные пустые строки, а при формировании форматной строки использовать только символ \n явно, а не /r/n, как сделали вы
  • Как выбрать определенный текстовый файл в python?

    trapwalker
    @trapwalker Куратор тега Python
    Волшебное слово знать надобно
  • Не могу передать строку в writerow, что не так?

    trapwalker
    @trapwalker Куратор тега Python
    Сергей Тихомиров, вам нужно взять первую попавшуюся книжку (почти любую) для новичков в языке.
    Дело в том, что вы пытаетесь программироват на питоне "наугад". Это до добра не доведёт.
    Преставьте, что у вас есть современная мастерская, а вы очень изобретательный человек из средневековья. Вы не догадываетесь зачем нужны синие колечки (изолента), поэтому крептие предметы друг к другу привязывая их проводами, потому что они похожи на привычные вам верёвки.
    Просто почитайте тогоже Марка Лутца без остановок, как художественную. Это у вас займёт пару дней, но потом вы сможете уже работать с книгой как с справочником.

    В Питоне все значения - это объекты. Функции, классы, типы - это все тоже объекты. даже целые и вещественные числа - это объекты. Всё - объекты.
    У объектов есть методы - это собственные функции. Но вы лучше почитайте об основах ООП сами. Я не нанимался вас здесь обучать.
    Переменная в питоне - это всегда ссылка на объект, которую можно использовать напрямую, без "разыменовывания".
    Можно привести простой пример: обьекты - это предметы: кружка, ложка, нож. Переменные - это ярлычки на ниточке, которые можно привязывать к предметам. Причем к одному предмету можно привязать несколько ярлычков. При присвоении происходит привязывание нового (или старого) ярлычка к предмету. Всё, что не приязано будет выбошено "уборщицей" (сборщик мусора).
    Объекты бывают изменяемые и неизменяемые.

    Далее в классе get_offices она обновляется

    Но ниже вы написали функцию. а не класс.

    по вашему ответу сразу ясно, что вы не понимаете, как вообще программа может работать

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

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

    Вот здесь
    for i in range(j, len(property)):
    у вас упоминается переменная j в функции, где она еще не была определена. Это значит, что вы ее объявили где-то глобально! Зачем?(!) Почему? (!). Короч ебред какой-то.

    Этот код безнадёжен, а вам нужно читать. Начните с Мака Лутца "Программирование на Питон".
  • Как запустить Python файлы через консоль?

    trapwalker
    @trapwalker Куратор тега Python
    wisgest, упс. не заметил тега "cmd/bat" думал речь о linux shell. Не помню как в винде заменить ";".
  • Как запустить Python файлы через консоль?

    trapwalker
    @trapwalker Куратор тега Python
    wisgest,
    запускать следующий, только если предыдущий завершился с ошибкой

    Да, это не игнорирование ошибок, это дезьюнкция (||). А "&&" - это конъюнкция.
    Оптимизация вычисления логических выражений не делает "вычисление" второго операнда дезъюнкции, если первый оказался истинным (то есть сработал без ошибок).
    Конъюнкция требует, чтобы оба операнда были истинными, и второй операнд не вычисляется, если первый ложный (то есть вычислился с ошибкой).

    Если хотите игнорировать ошибки вообще, используйте точку с запятой (";")
  • Как запустить Python файлы через консоль?

    trapwalker
    @trapwalker Куратор тега Python
    wasaabii, это значит, что первый выполнился с ошибкой. При "&&" следующая команда выполнится только при успешном завершении предыдущей. Если нужно игнорировать ошибки и независимо от них запускать седующий файл, то используйте "||" вместо "&&".
  • Как записать .mp3 в JSON?

    trapwalker
    @trapwalker Куратор тега Python
    Stepan Sidorov, продолжайте вести набюдение.
    Да, и никому не рассказывайте что решили.=)
  • Как записать .mp3 в JSON?

    trapwalker
    @trapwalker Куратор тега Python
    Stepan Sidorov, да смотря какие бизнес-требования к хранению. Может быть вам надо. чтобы при переносе файлов целостность не страдала, тогда каталоги и id3. Если нужна скорость, то индексные таблицы с метаданными и файлы позади кэша. Если компактность и порядок инсталляции в файловой системе, то архив и id3. Если скорость поиска по метаданным, то БД (sqlite) и файлы.
    Слишком мало данных по вашей задаче, а вариантов много.
  • Как записать .mp3 в JSON?

    trapwalker
    @trapwalker Куратор тега Python
    Stepan Sidorov, У mp3 ормата есть id3-теги. Они вписываются в специальной структуре в начало файла. Есть много разных утилит и библиотек для работы (чтения\записи) этих тегов. Если описание не слишком объемное, то можновоспользоваться этой структурой.
  • Можно ли сделать переотправку сообщений в Discord в другой канал? Python?

    trapwalker
    @trapwalker Куратор тега Python
    limorgin, обьясняю:
    То, что вы сказали, делать можно. Не слышал никогда о подобных запретах. Даже разрешения ни у кого спрашивать не требуется.
    Кроме того, питон - это полный по Тюрингу язык, всё что вы можете делать лично, возможно и запрограммировать на нём тоже.
  • GitHub pages 404?

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

    trapwalker
    @trapwalker Куратор тега Python
    nak-alexey,
    "0123456789"[5:2] == ""
    "0123456789"[5:9] == "5678"

    Теперь понятно?
    Если нет, то вот прочитайте.
  • Ошибка "string indices must be integers" как решить?

    trapwalker
    @trapwalker Куратор тега Python
    Сергей Золотарёв, это означает, что вы не понимаете что делаете. Научитесь читать сообщение об ошибке. Там четко и недвусмысленно написано в чем дело и в каком месте проблема. Если не можете прочитать, то процитируйте ее здесь и вам объяснят что значит каждая строчка в сообщении. Но вы пытаетесь по каким-то косвенным признакам и общей похожести делать какие-тьо выводы. Это бессмысленно. Хватит маяться дурью.
  • Как отобразить автоподсказки при типе typing.List[typing.Union] для любого элемента списка?

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

    Если кто-то и принял решение под одно имя в Web API поместить две такие различные функции, то вас так грешить никто не заставляет. Делайте отдельные функции.

    Исходя из вашей спецификации у вас и там и там список под именем items, а вовсе никакой не словарь. Это значит, что словарь-обёртка вам не нужна, поскольку count можно вычилить в питоне так: len(items), причем за O(1). В этой обёртке может еще помещаться сообщение об ошибке, к примеру, об ошибке доступа, тогда тоже ник чему её выдавать в результате, нужно бросать исключение.
    Выходит ваша функция будет специфицироваться либо так:
    get_friends(**kw): List[Union[str, Dict[str, str]]]

    Либо лучше делайте отдельные функции для этого и не стесняйтесь их назвать понятно.