Задать вопрос
  • Как изменить вводимые данные пользователем на звёздочки?

    hottabxp
    @hottabxp Куратор тега Python
    Сначала мы жили бедно, а потом нас обокрали..
    Можно использовать библиотеку keyboard
    import keyboard
    
    secret_symbol = '*' # Символ для замены
    
    def masked_input(prompt):
        print(prompt, end='', flush=True)
        input_str = ''
        
        while True:
            event = keyboard.read_event(suppress=True)
            key = event.name
            
            if event.event_type == 'down':
                if key == 'enter':
                    print()
                    break
                elif key == 'backspace' and len(input_str) > 0:
                    input_str = input_str[:-1]
                    print('\b \b', end='', flush=True)
                elif len(key) == 1:
                    input_str += key
                    print(secret_symbol, end='', flush=True)
        
        return input_str
    
    password = masked_input("Введите пароль: ")
    print(f"Введенный пароль: {password}")
    Ответ написан
    Комментировать
  • При преобразовании текста в кодировку windows-1251 не корректно меняется "Ё". Что делать?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Для начала, ваша регулярка не обнаруживает буквы Ё и ё, поскольку они находятся в блоках расширения кириллицы, за пределами диапазона А-я. Правильно будет /a-яё/i
    Ну и, возможно, следует учесть, что Ё !== Ё !== Ë.
    Ответ написан
    1 комментарий
  • Как сделать мини консольную игру?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Рисуете на бумажке граф состояний вашей игры.
    Каждый узел этого графа - это вопрос. Из узла выходят стрелочки в другие узлы. Каждая стрелочка - это вариант ответа и реакция на нее игры.
    Так вы опишете граф состояний конечного автомата.
    Теперь этот граф вам нужно оформить для использования в программе.
    Обычно граф описывают с помощью матрицы состояний. Это матрица N*N, где N-это количество состояний игры. Каждая ячейка с координатами (i, j) такой матрицы определяет переход из i-ого в j-ое состояние. Если в ячейке ноль, то перехода нет, а если 1, то есть.
    Обычно в такой матрице нулей гораздо больше чем единиц, поэтому такую матрицу кодируют в виде перечисления всех стрелочек-переходов из исходного в следующее состояние.
    В исходном коде или в файле описываете N состояний, для каждого состояния перечисляете все варианты ответов, для каждого варианта ответа указываете какое состояние будет при его выборе.
    Такую структуру можно описать в виде json или yaml-файла, либо прямо в коде средствми выбранного языка программирования (словарь, или функция с switch-case, или много if-ов).
    Программа будет представлять цикл и переменную со ссылкой на текущее состояние.
    В цикле печатаете вопрос, который соответствует текущему состоянию и варианты ответов на него, запрашиваете ответ у пользователя, в зависимости от ответа присваете в качестве текущего новое состояние.

    Если вам что-то не понятно в этом тексте, то нет смысла задавать дополнительные вопросы, в этом случае вы гарантированно не справитесь с заданием. Следует искать информацию о ненакомых терминах в интернете.
    Удачи.
    Ответ написан
    Комментировать
  • Почему не получается авторизироваться через requests?

    Vindicar
    @Vindicar
    RTFM!
    Потому что надо исходный код целевой страницы почитать, ну и разобраться, как пользоваться инструментами разработчика в браузере, чтобы понять, какие запросы выполняются.
    https://edu.tatar.ru/login - это URL для получения страницы с формой входа. А вот сама форма отправляет данные на URL https://edu.tatar.ru/logon. Именно по этому адресу я бы и делал запрос.
    Ответ написан
    Комментировать
  • Почему тормозит PostgreSQL?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега PostgreSQL
    Седой и строгий
    Почему вы план смотрите не для того запроса, который тормозит? Из очевидного - отсутствие индекса на поле, используемое для сортировки.
    Ответ написан
    3 комментария
  • Как создать свой JSON и получить доступ к значению по ключу?

    @Bright144
    Так в str не возможно получить доступ по ключи.
    Это не правильно:
    import json
    answer = {
            "id": "12",
            "status": "Готов",
            "url": "vk.com"
        }
    answer = json.dumps(answer, ensure_ascii=False).encode('utf-8')     #здесь ты переобразуешь str на bytes
    answer = str(answer.decode('utf-8'))                                #здесь обратно в str
    
    print(type(answer))                                                 #вот тип который ты хочешь получить доступ по ключи

    Вот это правильно:
    import json
    answer = {
            "id": "12",
            "status": "Готов",
            "url": "vk.com"
        }
    answer = json.dumps(answer, ensure_ascii=False)
    answer = json.loads(answer)                         #здесь ты переобразуешь json на данный
    
    print(answer['id'])                                 #получаем данные по ключи
    Ответ написан
    Комментировать
  • Какой pet проект создать, чтобы выделиться?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Pet проект это не тестовый проект для портфолио.
    Пет проект делается для себя, а потом по случаю добавляется в портфолио, а не создается исключительно для того, чтобы положить его в портфолио.

    Чтобы устроитсья, тебе нужно уметь работать, а не пет проект, не заморачивайся.
    Ответ написан
    Комментировать
  • Какой pet проект создать, чтобы выделиться?

    Griboks
    @Griboks
    Создайте pet-проект, который приносит вам доход.
    Ответ написан
    9 комментариев
  • Какой pet проект создать, чтобы выделиться?

    @rPman
    На правах шутки - используй то что сейчас на слуху, большие нейронные сети, языковые модели и т.п. Тем более там как раз питон.

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

    AmanitaRubescens
    @AmanitaRubescens
    Шалтай-болтай
    #последний принт
    print("Выключаю ПК через 2 минуты")
    os.system("shutdown /s /t 120")
    Ответ написан
    6 комментариев
  • Как работать со словарем древовидной структуры?

    0xD34F
    @0xD34F
    def get_ancestors(data, key):
      result = []
    
      while item := data.get(key):
        result.append(item['name'])
        key = item['parent']
    
      return result
    
    
    print(get_ancestors(data, 4))
    Ответ написан
    Комментировать
  • Как корректно создать шаблон для json-файла?

    Vindicar
    @Vindicar
    RTFM!
    Почитать документацию по модулю json и осознать, что dumps() принимает на вход объект, который надо превратить в JSON-строку. Зачем ты сам что-то колхозишь через f-строку? Подай ему на вход словарь с нужными ключами, и всё.

    JSON объект соответствует питоновому словарю со стороковыми ключами, например:
    print(json.dumps( {'foo': 'bar'} ))
    Ответ написан
  • Как асинхронно отслеживать изменение json?

    Vindicar
    @Vindicar
    RTFM!
    Либо обязать сервер пинать бота при обновлении JSON, либо периодически опрашивать JSON ботом.
    Если сервер отдаёт заголовок Last-Modified, то можно передавать в заголовке If-Modified-Since дату и время предыдущего успешного опроса. Тогда сервер либо ответит 304 Not Modified, либо 200 OK если были изменения.
    Ответ написан
    Комментировать
  • Когда новичку нужно изучать как работает интернет, после изучения базы JS?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Уважаемый пользователь.
    У тебя из 10 вопросов 9 вопросов про то. как стать разработчиком и поменьше учить.
    Прекрати такое поведение.

    Не хочешь учиться - выбери другое направление, кроме ИТ полный мир возможностей.
    Ну или учи свою верстку, работай всю жизнь джуниором, никто тебя за уши в сеньоры не тянет и не заставляет.
    Хочешь - учи, не хочешь - не учи.
    Читай вакансии и требования в вакансиях, зачем тебе советы рандомных людей из интернета, если ты постоянно спрашиваешь почти одно и тоже, хотя тебе уже отвечали.
    Ответ написан
    18 комментариев
  • Когда новичку нужно изучать как работает интернет, после изучения базы JS?

    Стоит ли новичку изучать как работает интернет?

    Стоит.
    Если хочешь быть востребованных и хорошо оплачиваемым специалистом, то изучить это всё придётся, рано или поздно.

    И если нужно изучить, то получается это та самая информация где нужно зазубрить что означает каждый термин?

    Зубрёжка полезна только если ты хочешь зачёт на экзамене получить.

    Если же ты хочешь применять знания на практике - нужно периодически повторять и решать задачи с использованием этих знаний.
    С тем же DNS-ом можешь разобраться, попробовав зарегистрировать новый домен и сделав сайт с его использованием, но без использования всяких конструкторов, которые всё настроят за тебя.
    Ответ написан
    Комментировать
  • Как связать локальный проект с другим репозиторием на GitHub?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Связывают не репозитории а конкретные ветки. Если вам дорога́ та ветка на гитхабе с единственным коммитом, то просто переименуйте её, чтобы не мешала отправлять актуальный проект.

    Если же хочется непременно объединить две истории, то вам нужно предварительно подгрузить историю с гитхаба к себе, и только потом отправлять.

    Например пересадить вашу локальную ветку поверх того коммита с гитхаба
    git pull --rebase origin main

    Либо через коммит слияния
    git pull --allow-unrelated-histories origin main
    Ответ написан
    9 комментариев
  • PostgreSQL в Django проекте не отображает файл базы данных?

    fzfx
    @fzfx
    18,5 дм
    postgresql хранит базу данных не в одном файле, а во множестве файлов в разветвлённой группе каталогов. данный каталог задаётся при запуске сервера postgresql, и он не должен размещаться в каталогах каких-либо других программ, проектов и т. п. (вплоть до того, что доступ на корневой каталог данных БД выдаётся только пользователю и группе postgres). ну т. е. если вы установили сервер postgresql, то файл базы данных есть, и не один, просто в том месте, где должен быть, а не в том, в котором вам кажется уместным. =)
    подключение к БД происходит либо по протоколу TCP, либо через unix-сокет, а не через какой-то файл базы данных. как именно это правильно делать - читайте документацию к вашему фреймворку по работе с postgresql.
    Ответ написан
    1 комментарий
  • Как извлечь нужный текст из строки Python?

    Hivemaster
    @Hivemaster
    Админ, который хочет программировать
    s = '[Win32Window(hWnd=123456)]'
    d = s[s.index('=')+1:s.rindex(')')]
    Ответ написан
    1 комментарий
  • Выдает ошибку None 1=, как решить?

    xenon
    @xenon
    Too drunk to fsck
    вот тест test_triple_free_space_algorithm у вас проваливается, потому что возврат от self.calculator.free_space_algorithm(...) у вас None, а ожидается
    {'left_corner': {'x': 2, 'y': 1}, 'right_corner': {'x': 5, 'y': 8}}

    А None он у вас потому, что в этой функции вообще собственного кода нет (включая return), только вложенные функции. Вот по умолчанию None как return value и используется.
    Ответ написан
    Комментировать