Задать вопрос
  • Как быстро распарсить много json файлов на python?

    Maksim_64
    @Maksim_64
    Data Analyst
    Ну во первых, pandas read_json и json_normalize (для вложенных json). Затем этот фрейм или подсет фрейма отправляешь в базу, методом to_sql если все делаешь правильно с точки зрения pandas (весь код будет без единого цикла) то это ускорит очень серьезно. Еще больше можно ускорить библиотекой polars она имеет схожий синтакс с pandas у ней куда меньший функционал по манипуляции данных, но она фокусируется на скорости в том числе и чтения файлов.

    Думаю скорости pandas будет достаточно, если нет то polars. Начать лучше с pandas документация очень хорошая, да и кода всего ничего будет.
    Ответ написан
    1 комментарий
  • Как на хостинге запустить flask приложение на 80 порту?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Как вариант:
    1. Создать А-запись с ip сервера.
    2. На сервер поставить обратный прокси, например Nginx, в котором прописать правила, откуда брать инфу, если зайдут на указанный домен, например на контейнер докера с портом 3000.
    3. Запустить контейнер докера с портами 8080>3000 (внешним и внутренним соответственно). Flask приложение в контейнере должно слушать 3000 порт (либо изменить во всех случаях на тот, который слушает).
    4. Выпустить SSL для домена, затем дописать в Nginx правило обработки https.
    5. Проверить файервол, чтобы разрешал локальный трафик на 127.0.0.1:3000.

    Кстати, замечал множество раз у новичков, что они создавали правила в файерволе, а после перезагрузки сервера - правила разумеется возвращались на дефолтные, так вот - нужно сохранить эти правила в файл, затем заставить файервол при перезагрузке - брать эти правила из этого файла.
    Ответ написан
    6 комментариев
  • С помощью какого инструмента можно сверстать то что на картинке?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    Ответ написан
    Комментировать
  • Рабочий метод прошивки xiaomi redmi 8 в 2023?

    @maksam07
    Идите в профильную тему на 4pda, она все еще активна, там куча инструкций + комьюнити подскажет
    https://4pda.to/forum/index.php?showtopic=973712

    Возможно это будет решение: https://4pda.to/forum/index.php?showtopic=792504&s...
    И используйте поиск по топику "The system has been destroyed", там много ответов
    Ответ написан
    Комментировать
  • Что будет если подключить 4-pin вместо 8?

    @alexalexes
    Вас больше должно беспокоить насколько массивен радиатор на фазах питания процессора (и количество этих фаз). На китайских материнках очень сильно греются фазы, если туда поставить процессор больше 100 Ватт TDP. Процессор 2670 имеет 120 Ватт TDP. Если радиатор не массивный, то выше 2660 лучше не ставить, самым холодным вариантом будет проц. 2640.
    PS: Вангую, что у вас блок питания 350...400 Ватт. Может не потащить китай-зионы. Обычно, в такие конфиги ставят блок 500...650 Ватт. Еще у вас будет видеокарта кушать, так как встроенной графики на зионах нет, а это дополнительная мощность на БП должна быть.
    Ответ написан
    Комментировать
  • Почему скрипт выдает разные результаты?

    @kalapanga
    Для начала нужно дать точное определение Вашей операции "вычитания"
    Очевидно, что Вы убираете из ряда-"уменьшаемого" элементы, присутствующие в ряде-"вычитаемом". Если это все правила, то в результате обоих вычитаний получится только одинаковый набор элементов, но не последовательность. У Вас так и получилось - в обоих случаях в результате есть 5 единиц и 5 нулей. А чтобы эти элементы ещё и в одинаковой последовательности были, нужно дорабатывать правила этой самой операции вычитания.
    Ответ написан
    Комментировать
  • Как верно настроить вероятность в мини - игре?

    Vindicar
    @Vindicar
    RTFM!
    0. Главное: вопрос у тебя звучит "Как верно настроить вероятность". В коде ровно одна строчка с random, и ты не объясняешь что она делает. Собственно, и правила игры (т.е. желаемое поведение кода) ты не озвучил. Что такое "подкрутка"? Что тут посоветуешь...
    1. Если ты ловишь себя на том, что создаёшь переменные вида mine_3, mine_4, mine_5, а дальше делаешь x = eval(f"mine_{mines_kolv}[{now_state}]") тебе нужна индексируемая коллекция! Список или кортеж. Тем более что списки ты уже используешь, значит, знаешь, что это такое. Неужели "список из списков" - это такая сложная концепция?
    2. У тебя в самом первом SQL-запросе подстановка параметров выполняется корректно, а дальше идёт ересь с использованием %-форматирования. Не надо так.
    3. У тебя куча таблиц, из которых ты вытаскиваешь по одному значению. Если эти значения всегда требуются вместе, почему не объединить их в одну таблицу?

    Короче, лучшее, что тут можно посоветовать - выкинуть этот код полностью (он исправлению не поддаётся), отложить бота, подучить язык и его средства, в частности, структуры данных и приёмы работы с ними. А потом уже вернуться к боту. Так хотя бы не будешь спотыкаться на простых операциях.
    Ответ написан
    Комментировать
  • Почему не удаётся найти путь?

    PolarOneBear
    @PolarOneBear
    Проблема может быть тут
    AudioSegment.converter = f"{os.getcwd()}\\ffmpeg.exe"
    AudioSegment.ffprobe = f"{os.getcwd()}\\ffprobe.exe"


    ffmpeg и ffprobe точно установлены? Попробуйте указать абсолютный путь.

    opus_file выглядит нормально
    И проверьте актуальность pydub, может обновить необходимо.

    pydub не может найти ffmpeg и ffprobe
    Ответ написан
    2 комментария
  • Как создать ярлык программы с "тихим" запуском?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Если правильно понял задачу:
    1. Создаем ярлык указанного приложения.
    2. Запуск указанного приложения без окна консоли.
    3. Запущенное приложение не будет светиться в трее.
    4. Приложение будет добавлено в автозагрузку.
    5. Винда.

    1. Используем vbs скрипт для тихого запуска, silent.vbs:
    Set WshShell = CreateObject("WScript.Shell")
    WshShell.Run chr(34) & "C:\machine\mynote.exe" & Chr(34), 0
    Set WshShell = Nothing

    2. Запуск и добавление в автозагрузку через Python:
    import os
    import winshell
    
    def create_autostart_link_for_vbs(application_path, link_name, start_directory="", icon_directory=None):
        # Путь к папке автозагрузки
        startup_folder = winshell.startup()
        
        # Путь, где будет храниться ярлык
        link_path = os.path.join(startup_folder, f"{link_name}.lnk")
        
        # Создание ярлыка
        with winshell.shortcut(link_path) as link:
            link.path = application_path
            link.description = f"Link for {application_path}"
            link.working_directory = start_directory
            if icon_directory:
                link.icon_location = (icon_directory, 0)
    
        return link_path
    
    # Путь до vbs скрипта
    path_to_vbs = r"C:\machine\silent.vbs"
    
    # Юзаем
    create_autostart_link_for_vbs(path_to_vbs, "AutostartAppWithoutWindow")

    Важно! Приложение может по разному реагировать на то, если его запускают в тихом режиме.
    Ответ написан
    3 комментария
  • Правильно ли я понимаю устройство классов в python?

    Maksim_64
    @Maksim_64
    Data Analyst
    Нет у тебя абсолютно не правильное представление по все пунктам. Написание хорошего ответа на каждый вопрос потребует дней, при том что на все эти темы можно разговаривать на совершенно разных уровнях. Если хоть как-то в двух словах.
    1. OOP одна из парадигм в программировании в том числе поддерживаемая python.

    2. Объект это python абстракция для данных, все данные в python представлены в виде объектов или взаимоотношений между объектами. Отсюда и выражение все в python является объектом.

    3. В python каждый класс не явно наследуется от object класс. Да даже если мы не переопределим явно __init__ то он там есть. Например
    class MyClass:
        pass
    my_instance = MyClass()
    print(dir(my_instance))
    Там будет в том числе __init__ хотя мы его явно не определяли. __init__ это конструктор класса там могут быть заданы атрибуты которые будут в области видимости экземпляра класса, с которыми будут оперировать методы экземпляра класса, он выполнится при создании экземпляра класса.

    4. По скольку, ты еще совсем новичок, понятия "приватных" и "защищенных" атрибутов обсуждать совсем бессмысленно, к тому же их "приватность" она в ковычках, в python нет способа создать настоящий приватный атрибут, но это все совершенно лишнее для тебя сейчас и в обозримом будущем.

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

    Не думаю что тебе хоть что то стало понятней. По этому бери и изучай понимание будет приходить медленно и со временем, а не пытайся понять все вопросы на раз два.
    Ответ написан
    3 комментария
  • Почему не получается передать значение в экземпляр класса?

    Vindicar
    @Vindicar
    RTFM!
    self.ship = Ship(screen)
    Ты пытаешься передать в конструктор Ship() локальную переменную screen, которой у тебя нет.
    Тут не C#, если обращаешься к полям класса - явно указывай self.
    Ответ написан
    3 комментария
  • Почему не получается передать значение в экземпляр класса?

    Maksim_64
    @Maksim_64
    Data Analyst
    А почему он должен? Где ты объявил screen? У тебя есть self.screen, вот его и передавай.
    Ответ написан
    Комментировать
  • Как правильно покрыть WiFi сетью квадрат 5х5 км. на 100 000 человек?

    Пахнет так, будто это задача для мобильной связи скорее, а не для WiFi - это раз.

    Если клиенты стационарные, то вообще для кабеля.

    25 км² и 100к человек - это вполне кейс небольшого города.

    Если это какое-то временное мероприятие типа концерта, то это mesh нужен соответствующий, который рассчитан на такую нагрузку (обычный офисный не уверен, что выдержит - они на пару сотен рассчитаны)
    Ответ написан
  • Как правильно покрыть WiFi сетью квадрат 5х5 км. на 100 000 человек?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Правильно - идти к профессионалам, которые будут гарантии связи по ТТХ давать.
    Они разворачивают сеть из специализированных точек доступа с mesh сетью и контроллерами.

    А вообще предполагаю, что вопрос отвечается простым гуглением типа "wifi для фестиваля"
    Ответ написан
    2 комментария
  • У меня почему то дс бот на питоне не понимает команды?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Потому что в строке await ctx.send(embed=discord.Embed( буква "с" кириллическая.
    Ответ написан
    Комментировать
  • Полезный твик для Windows?

    HemulGM
    @HemulGM Куратор тега Windows
    Delphi Developer, сис. админ
    Есть такие
    Ответ написан
    Комментировать
  • Как произвести сортировку в таблице SQLite3, после удаления записи?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Все базы данных хранят строки не так как Excel. Хранят как предписано в файловом
    формате для целевой DBMS. Когда удаляешь - обычно
    остаются дырки которые потом заполняются другими строками. Но это я упрощенно рассказываю.
    В реальности все еще сложнее. И есть процессы вакуума или другой релокации строк. И таблица
    может двигаться в памяти. Шаффлиться. Делиться на части. Кластеризоваться и т.п.

    Поэтому твоя хотелка достигается только с использованием order by.

    Все остальные способы не работают потому что язык SQL не дает никаких гарантий относительно
    физического упорядочивания строк.

    UPD: Для авто-нумерации https://stackoverflow.com/questions/16847574/how-t...
    Ответ написан
    Комментировать
  • Как произвести сортировку в таблице SQLite3, после удаления записи?

    Vindicar
    @Vindicar
    RTFM!
    Ты просто не понимаешь сути первичного ключа.
    Это значение, которое однозначно идентифицирует строку, независимо от наличия и количества других строк в таблице. И точка. Он не должен меняться вообще за время жизни строки.
    Бывают случаи, когда у нас уже есть уникальное значение, которое можно использовать как ключ.
    Но куда чаще используются синтетические ключи, т.е. просто числа, которые пользователь по-хорошему и видеть-то не должен никогда. А раз так, то какая разница, есть ли дырки в нумерации?
    Я больше скажу, иногда сплошная нумерация - это слабое место в системе.
    Ответ написан
    Комментировать
  • Как работает метод max() для списка из списков?

    gedev
    @gedev
    сисадмин-энтузиаст
    Посмотрите на свой список, у вас там строки, а не числа. С числами всё работает так как вы ожидаете. А вот строки в Python сравниваются иначе — по их ASCII/Unicode кодам.
    >>> green = [[0.01775, 274903], [0.0177, 2767608], [0.01765, 1966445], [0.0176, 698199], [0.01755, 2853585], [0.0175, 944079], [0.01745, 2813977], [0.0174, 336701], [0.01735, 2118072], [0.0173, 975570]]
    >>> max(green, key=lambda x: x[1])
    [0.01755, 2853585]
    Ответ написан
    1 комментарий