• На windows server 2016 без активации лицензии можно сделать сертификат для RDP?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    1 - можно поставить галочку "больше не выводить"
    2 - после того, как поставил галочку, этот ярлык больше не будет ничего спрашивать. Его можно скопировать, и разослать остальным, если они сами не могут поставить галочку один раз.
    Перед рассылкой, пересохрани без имени, а то потом будут спрашивать, почему мой пароль не подходит.
    Ответ написан
  • Как эффективней рассчитать время работы с учетом выходных и праздников?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    я бы захардкодил в массив за все рабочие дни за год(ну, или хотя бы сгенерировал на основании массива с выходными днями):
    calendar(year2022(mounth1(1,2,3,4,5,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,28,29,30),mounth2(2,3,4,5,6,9,10...), mounth3(1, 2...), etc))
    и спрашивал у него
    days_to_work_on_task = 3
    start_date = today
    end_data = calendar[year2022[mounth2[today + days_to_work_on_task]]]
    так как заведомо там все дни рабочие, можно тупо по порядку идти, приплюсовывая количество дней положенного на таску.
    нужно обработать момент с выходом за рамки кортежа месяца, и за рамки кортежа года (считать на сколько вышел, и остаток переносить на другой месяц/год)

    так же нашёл библиотеку с API производственного календаря, если не лень разобраться, можно оттуда тянуть данные: https://www.isdayoff.ru/libs/
    Ответ написан
    Комментировать
  • Как метод len заменить функцией?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    Это задача на мышление, её нужно было решать самостоятельно.

    Если в тупую - использовать enumerate
    Если чуть умней - в цикле обращаться к += 1 элементу строки до тех пор, пока не выдаст ошибку

    А вообще, если такие простые задачи не идут на ум, надо идти спать, и утром то что вчера не мог понять 3 часа, понимается за 15 минут.
    Так же полезно самостоятельно гуглить. Например: "как перебрать все элементы", и помнить что строка - это массив, но строка, и они на изичах преобразуются одно в другое.
    Ответ написан
    Комментировать
  • Как написать красивый и понятный код?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    Красивый и понятный код = читаемый код.
    Нагугли что такое самодокументирующийся код.

    Я сам начинающий, но с чего бы я начал это распутывать:
    area[0][0]["text"] - тут у тебя куча раз написано примерно одно и то же, меняется только 2 числа.
    Легчайшим образом переносится в функцию:
    def x_here(x,y):
        if area[x][y][text] == X:
            return True
        else:
            return False


    тогда одна строка в winner() уже будет вот так выглядеть:

    if x_here(0,0) and x_here(0,1) and x_here(0,2):
        return "X"


    тут у тебя снова есть повторяющиеся элементы
    во-первых, координаты для победы заранее известны
    win_condition_topleft_to_botright = ((0,0),(0,1),(0,2))

    у нас есть кортеж с кортежами. Если в этих координатах везде окажутся иксы - нужно вернуть X (победа). У этого кортежа понятное название (слева вверху к низу справа)

    далее нам нужна функция которая примет это условие победы и проверит его:
    def check_win_condition(first, second, third):  
        """на вход три кортежа, являющиеся координатами игрового поля"""
    
        if x_here(*first) and x_here(*second) and x_here(*third):
            return "X"
    
    def winner():
        check_win_condition(*win_condition_topleft_to_botright)
        check_win_condition(*win_condition_2)
        check_win_condition(*win_condition_3)
        check_win_condition(*win_condition_4)


    И... видишь повторяющиеся элементы? 4 одинаковые строки, в которых меняется только один параметр?
    Ah shit, here we go again

    Ты знаешь что делать. Действуй.
    Ответ написан
    1 комментарий
  • Как диагностировать проблему на ПК?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    Открыть диспетчер задач, пусть висит в фоне
    Услышал то что ты описал - альтаб и смотришь на график активности hdd. Должно быть падение до нуля, и с возобновлением работы график должен подать признаки жизни.
    Далее, запомнить шум который пропадает.
    Выключить ПК, дёрнуть кабели из HDD чтобы он не работал, запустить систему. Прислушаться. Если звука нет, чекнуть визуально видеокарту. Если видеокарта крутится нормально, но звука нет, значит, видимо, это был шум от hdd

    Открыть крышку компа, поставить за монитором, как "кулер останавливается", сразу визуально чекать работу кулера. На компе иметь в трее программу с температурой (everest вроде садится в системный трей и температуру показывет оттуда, но точно не помню). Кулер крутится, температура не растёт, и звук издаёт hdd?
    Выдохнуть и жить спокойно.
    Если нет, пиши результаты
    Ответ написан
    2 комментария
  • Как настроить OpenVPN на Linux?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    Здравствуй, Никита.
    Первое - если тебе кажется, что мануал писал дебил, не понимающий, что он пишет - возможно, он просто опустил некоторые очевидные моменты, либо ты чего-то в корне не понял.
    Далее - если тебе нужен vpn для обычного домашнего использования - лучше взять WireGuard. Существует скрипт, с помощью которого его может настроить, даже такая обезьяна, как я.
    Впрочем, я и OpenVPN ранее настраивал, просто меня не устроило то что он сильно режет канал. Выше дали нормальные руководства.

    Смотри, wireguard меньше напруги на процессор даёт, и меньше режет канал.
    Гайд со скриптом вот: https://www.comss.ru/page.php?id=7559

    Или может быть я не совсем понял вопрос.
    Объясни свои цели, что именно ты собираешься сделать? Что есть сейчас, и какова конечная цель? Что значит "для обычного использования"?

    И покажи гайд, которым ты пользовался, и на каком этапе у тебя что-то не получилось.
    Ответ написан
    4 комментария
  • Ошибка 0xC004E003, как исправить?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    https://lumpics.ru/activation-error-0xc004e003-in-...
    что из этих шагов уже предприняли?
    Ответ написан
  • Почему не монтируется диск в WSL windows?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    Интернет говорит, что нужно винду обновить. https://github.com/microsoft/WSL/issues/5395

    Пойди в центр обновления и обновись, потом проверь ещё раз
    Ответ написан
  • Если число ниже, то cv2.putText красного цвета, если выше, то зеленого, как?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    text_color = (1, 1, 1) #по умолчанию текст красный
    
    if score >10:
        text_color = (2, 2, 2) #если оценка оказалась выше 10, то меняем цвет
    if score > 50:
        text_color = (3, 3, 3) #можно увеличить количество цветов, в зависимости от оценки
    
    cv2.putText(
    img = img,
    text = str(score1),
    org = (0, 50),
    fontFace = cv2.FONT_HERSHEY_DUPLEX,
    fontScale = 2.0,
    color = text_color,
    thickness = 3
    )
    Ответ написан
    Комментировать
  • Как запустить свой код на виртуальной машине на сервере?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    рувеб чекни ещё к списку выше
    Ответ написан
    Комментировать
  • Работа с CSV-файлами в Python?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    представь, что файл представляет собой массив(представь типичный текстовый файл). В этом массиве содержатся другие массивы(строки в текстовом файле). В строках содержатся объекты(буквы/цифры/символы в текстовом файле).
    Читаешь ридером файл, прогоняешь прочитанное через цикл, в строках ищешь объект - нужного тебе автора. Результат записываешь.
    Читай документацию, смотри видеогайды, я не знаю что именно тут объяснять. Когда просишь что-то объяснить, пиши свой ход мыслей, и тут два варианта: либо ты сам найдёшь ответ, пока будешь писать вопрос, либо кто-то подскажет, где именно мышление завело тебя в тупик.
    И не понимать - это нормально, бывало, я тоже тупил, потом забивал, и через пару дней возвращался с новыми силами, и и предмет тупняка уже понимался с полуслова.
    Ответ написан
    Комментировать
  • На собеседовании сказали, что не все функции - замыкания. Так ли это?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    парень. Всё равно ты будешь использовать ту терминологию, которую используют на работе. Если там под замыканием подразумевается замыкание с инкапсуляцией, то после того как тебе сказали что "твой код - говно", было два варианта: 1)поговорить о терминах либо со ссылкой на официальную документацию, либо вместо с собеседником вывести определение исходя из смысла понятия, не прибегая к авторитетам вообще. 2) Сказать о том, что прочитал такое определение у %авторитет%, и сказать, что готов использовать то, которым пользуетесь вы на работе.

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

    Есть второй вариант: собеседник тебе говорит: "Ахтунг! Замыкание используется не просто для того, чтобы спасти переменную от удаления! Это ещё и способ сокрытия данных: замыканием можно использовать локальную глобальную переменную, вместо того чтобы использовать просто глобальную переменную, или же городить отдельный класс."
    В этом случае всё твое определение идёт в пешее эротическое, и ты соглашаешься, что для этого придётся обернуть функцию в функцию, чтобы у тебя была функция с локальными переменными, которые будут глобальными для этой функции в функции.
    Ответ написан
    13 комментариев
  • Что делать при ошибке при переводе через googletrans?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    AttributeError: 'NoneType' object has no attribute 'group'
    Интерпретатор пытается к NoneType применить метод group(), у NoneType нет такого метода, ошибка в этой строке:
    code = self.RE_TKK.search(r.text).group(1).replace('var ', '')
    .group применяется к self.RE_TKK.search(r.text), данными тут является r.text
    если проследить выше, получается что текст был получен сначала из self.token_acquirer.do(text), сюда попал из self._translate(text, dest, src, kwargs), куда был отправлен из translator.translate(_text_, dest=lang), куда был засунут из transl(d, l).

    Судя по тому, что написано в выложенном тобой логе, ошибка возникает из-за не корректного d в transl(d, l)
    Видно, что d у тебя выходит из input с клавиатуры. Инпут из клавы это строка по умолчанию, но никак не NoneType.
    варианты такие:у тебя каким-то образом из input приходит не строка а nonetype, либо где-то в процессе твоя строка превращается в NoneType.

    первое - замени input на любой string, и посмотри, будет ли работать, например: d = 'bridge'

    з.ы. за такой нейминг тебя по рукам будут бить палкой, никому не интересны эти d, l, s, mm, aa, aaaa. Когда разберёшься с проблемой, переименуй переменные в человекочитаемые, приучайся сразу.
    Ответ написан
  • Почему не выводится команда?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    Братанчик, я в своё время тоже намучился с саблаймом, и плагины ставил, которые поднимают его до уровня нормального отладчика, но в итоге всё-таки пришлось ставить PyCharm. Поставь и ты, не насилуй себе мозг. PyCharm community бесплатный, не нужно сохранять файлы перед запуском, встроенный отладчик, консоль, живой интерпретатор... но это потом. Сначалда просто привыкни к нему на голом python, потом уже оценишь и остальные фишки, со временем.
    Саблайм это для тех, у кого руки на месте, вот я безрукий, и ты, судя по этому вопросу, примерно на моём уровне, поэтому PyCharm энивей.
    Ответ написан
    Комментировать
  • Как устранить медленную работу ЭЦП рутокен 2.0 через RDP winserver?

    snaiper04ek
    @snaiper04ek Автор вопроса
    Не стреляйте в эникея, он админит как умеет
    На форуме техподдержки рутокена наткнулся на пост с такой же ситуацией как у меня. ТП ответила что чем больше пинг, тем дальше вы идёте лесом. ЭЦП не предназначена для такого использования, всего доброго и хорошего настроения.

    Перенесли сервер из облака на локальную железку, другого решения, не найдено.
    Ответ написан
    Комментировать
  • Windows rdp - обрывы были периодические, но пропали при ping host -t из cmd, из-за чего это?

    snaiper04ek
    @snaiper04ek Автор вопроса
    Не стреляйте в эникея, он админит как умеет
    После длительного гугления и гадания на кофейной гуще, спустя несколько месяцев тестирования решения, могу чётко сказать решение: все проблемы ушли после насильственного выключения UDP протокола на клиенте, оставил только TCP. Причины зависания мне обнаружить не удалось (эникей скиллы не позволили), но теория следующая:
    пользователь устанавливает подключение по RDP, и дальше по UDP кидаются пакеты туда-сюда, без проверки целостности и без отсылки пакетов, поддерживающих сеанс (нет сообщений "соединение живое", keepalive). Либо где-то кто-то по пути теряет коннект из-за отсутствия пакетов keepalive, думая что раз keepalive нет, то соединение мертво.
    TCP же всегда гоняет keepalive, даже если свернуть RDP соединение, предположительно поэтому соединение не обрывается.
    Включается TCP only либо через групповые политики (легко гуглится), либо через реестр вот так:
    Use only TCP
    Registry Hive HKEY_LOCAL_MACHINE
    Registry Path SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
    Value Name SelectTransport
    Value Type REG_DWORD
    Value 1

    Появилась проблема в первом месте потому что я сам настроил UDP, пользуясь вот этой статьёй с хабра: https://habr.com/ru/post/501132/, а в другом месте в душе не знаю почему она появилась, но семь бед - один ответ.
    з.ы. Не всё то золото, что гайд на хабре.
    Ответ написан
    Комментировать
  • Почему часто отключается проводная мышь?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    у меня шакалит клава с мышкой когда перепады напруги в сети (на кухне щёлкнул выключатель, у меня потухла подсветка на клаве и жду 2-3 секунды переподключения), причём иногда только клава шакалит (возможно, из-за обилия подсветки ей иногда больше достаётся.) Очень редко так происходит, и но чем ближе к вечеру, и чем больше устройств включено в комп по usb, тем выше шанс.
    Эта фигня из-за матери происходит у меня, что то с ней не так. Причём даже через концентратор с активным питанием! всё равно шакалит, то есть это именно порты на матери выворобушкиваются.
    При включении компа между биосом и осью тоже иногда шакалит, с шансом 30%. Мать серверная с алика. Не то чтобы я пытался победить этот баг, просто выяснил что мать и успокоился, не мешает.
    Ты подключи 100% рабочую мышь, поюзай её, подключать старайся в задние порты. Проверь соседние usb устройства, убери всё, в том числе клаву, и если не шакалит, то накидывай по одному устройству, и проверяй всё. Выключи весь свет в хате, а так же попробуй просто включить комп, позапускать программы какие-нибудь (стим, дискорд, браузер, всё что есть), и после этого ребутнуть комп, проверь исчезли ли подвисания. так же попробуй вырубить комп и с холодного старта проверить подвисания. Если всёравно шакалит, убери все устройства изнутри (hdd, видюху, оставь одну планку оперативы) и загрузись в live cd, проверь будет ли из него шакалить. Скачай ubuntu, загрузись с флешки (даже устанавливать не нужно, там перед установкой можно live версию включить на самом установочном образе), там браузер firefox есть, посиди в интернете на убунту денёк, есть много игр работающих прямо из браузера, потести на предмет подвисания мыши.
    Вобщем, тести, ибо удалённо сказать от чего у тебя шакалы хороводы вокруг мыши водят - невозможно.
    Есть шанс что рандомно научишься чинить это подвисание, просто запоминай(а лучше - записывай - какие программы запускал, сколько комп перед этим работал, переподключал ли мышь, холодный старт был спустя сколько времени, перезагрузку делал после запуска программ или после включения, в общем - всё логируй) что делал, чтобы когда обнаружишь что мышь больше не виснет - смог понять, что к этому привело.
    Ну или просто неси в сервис, есть шансы что попадёшь не к мошенникам которые попросят на 5к рублей за замену конденсатора.
    Ответ написан
  • Почему отсутствует кнопка "включение подсистемы linux"?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    В биосе виртуализация включена? Она должна быть активна для корректной работы hyper-v. На скриншоте галочка hyper-v не отмечена.
    Ответ написан
    Комментировать
  • Стоит ли покупать mac mini?

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

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    Дружок-пирожок, а ты точно уверен что тебе нужен while True: при проверке клавиш?
    Сам я с интерфейсом ничего не пытался делать, но по логике у тебя мэйн залу... заloop... зациклен! Да, зациклен, вот.
    И по идее, пока мейн не завершится, он постоянно будет и так проверять клавиши, разве нет?
    Пробуй, о результатах отрапортуешь, самому уже интересно.
    Ответ написан
    2 комментария