@AlexAB87

Почему не работает getpass in Pycharm?

Подключаются к БД MySQL
при использовании модуля getpass после ввода логина ничего не происходит, можно вводить бесконечное количество раз
использую PyCharm

как юзать getpass или есть ли альтернатива?

from getpass import getpass

    try:
        print("login MySQL")
        with connect(
            host="localhost",
            user=input("user_name: "), # user_name: root
            
            password=getpass(prompt='Password: ', stream=None),
            # password=input("pass:"),
            database="python_db"
        ) as connection:
            print("connected well")
            print(connection)
  • Вопрос задан
  • 239 просмотров
Пригласить эксперта
Ответы на вопрос 2
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
Тут может быть много нюансов. Например, тупо стоит except Exception и опаньки.

Или имя какого-либо файла в проекте будет getpass и всё пойдет наперекосяк. И т.п.
Отсюда этих нюансов не видно.

Так-то если смотреть на код - он должен вываливать кучу ошибок из-за неправильных отступов, незавершенного try и пр.

Рекомендую освоить дебаггинг, тем более в pycharm он встроенный и достаточно удобный. И смотреть, где и что происходит в переменных.
Ответ написан
@DDV23
Биокибернетик
В IDE, таких как PyCharm, getpass может работать не так, как ожидается.
Насчет отладки:
1. Запустите код в терминале, а не через IDE. Это должно работать без проблем, так как getpass предназначен для работы в терминальном окружении.
2. Если вас не беспокоит что пароль будет отображаться на экране при вводе, то вот альтернатива: можно использовать input вместо getpass
3. В разделе переменные окружения вы можете добавить переменную с вашим паролем. Например, PASSWORD=password_here.
В итоге использовать так:
import os
password = os.environ.get("PASSWORD")
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы