Друкарня від WE.UA

У сьогоднішній статті ми будемо розбирати бібліотеку pwinput, яка дозволяє приховувати введенні користувачем символи у терміналі. Тож, перейдемо до справи, розглянувши функціонал даної бібліотеки.

Встановлення

Windows:

pip install pwinput

MacOs:

pip3 install pwinput

Linux:

pip install pwinput

Приховування введення

Отже, для того, щоб приховати своє введення нам потрібно застосувати функцію pwinput(), потім у параметрі prompt вказати текст, який буде відображатися у полі введення, та символ, яким ми хочемо приховати наше введення. А тепер перевіряємо роботу функції на практиці:

import pwinput

pwinput.pwinput(prompt="Enter secret key: ", mask="*")

Після запуску коду отримуємо такий результат:

Enter secret key: qwerty12345

Як ми бачимо, наше введення абсолютно ніяк не приховується. Якщо ви, як і я, використовуєте у якості IDE PyCharm, то у вас виникне така ж сама проблема. Насправді вирішення цієї проблеми є, і навіть цілих два варіанти, які ми розглянемо далі.

Виправлення проблеми з функціоналом pwinput() у PyCharm

1 варіант. Ми можемо просто запустити наш код не у вікні Run, а у вікні Terminal у тому ж середовищі PyCharm. Тобто запускати програму будемо безпосередньо у терміналі, а не у консолі. Щоб запустити програму у терміналі треба написати команду python main.py (замість main.py може бути будь-яка назва вашого файлу з кодом).

2 варіант. Перейти у верхнє меню Run, обрати опцію Edit configurations, далі випадаючому списку Modify options обрати опцію Emulate terminal in output console і натиснути кнопку Run або OK (кнопка Run одразу запускає код з щойно встановленими налаштуваннями).

Таким чином, функція pwinput() буде працювати коректно. Після застосування одного з цих варіантів знову запускаємо код і отримуємо:

Enter secret key: ************

Тепер наша програма працює як треба.

Інші приклади з pwinput()

Ось ще приклад з функцією pwinput(), де ми не вказували параметр prompt, а просто вказали параметр mask:

data = pwinput.pwinput(mask="@")
print(f"Your password is '{data}'")
Password: @@@@@@@@@@@
Your password is 'qwerty12345'

Як бачимо, якщо не вказати параметр prompt, то у полі введення буде відображатися просто ‘Password:’.

І нарешті останній приклад, у якому ми не вказуємо жоден з параметрів:

data = pwinput.pwinput()
print(f"Your password is '{data}'")
Password: *******
Your password is 'gameboy'

Можемо спостерігати, що функція pwinput() за замовчуванням приховує введення користувача символом ‘*‘, якщо конкретний символ не заданий.

Висновок

У цій статті ми познайомилися з бібліотекою pwinput, навчилися нею користуватися та вирішили проблему з її функціоналом у PyCharm. Сподіваюсь, що дана стаття була корисна та цікава! Дякую за увагу!

Статті про вітчизняний бізнес та цікавих людей:

Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Magnifique numérique
Magnifique numérique@nocturnal_reader we.ua/nocturnal_reader

Нічний читач

54Довгочити
648Прочитання
18Підписники
Підтримати
На Друкарні з 14 липня

Більше від автора

  • Клас itemgetter() у модулі operator

    Всіх вітаю! У даній статті ми продовжимо тему спеціальних властивостей словників у Python. На цей раз ми поговоримо про модуль operator та його клас itemgetter(), яка дозволяє працювати зі списками та словниками у Python.

    Теми цього довгочиту:

    Програмування
  • Метод split() у Python

    Всіх вітаю! Сьогодні ми розглянемо метод split() у Python та побачимо, як використовувати її на прикладах.

    Теми цього довгочиту:

    Програмування
  • Створюємо стовпчикові графіки за допомогою plotly

    Всіх вітаю! У цій статті пропоную вам зануритися у графіки та візуалізацію на Python за допомогою plotly. На цей раз ми втілимо графік прослуховувань різних реп виконавців за місяць та графік з оцінками деяких альбомів за сайтом AOTY.

    Теми цього довгочиту:

    Програмування

Це також може зацікавити:

  • FastAPI

    FastAPI. Переваги та приклади коду.

    Теми цього довгочиту:

    Python
  • Рівні ізоляції транзакцій у БД

    Доволі детальний огляд аномалій у БД, рівнів ізоляції, які дозволяються уникнути аномалії, та імплементації цих рівнів. Багато використовую джерела та свої коментарі, в кінці декілька чит-шитів.

    Теми цього довгочиту:

    Бази Даних

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити:

  • FastAPI

    FastAPI. Переваги та приклади коду.

    Теми цього довгочиту:

    Python
  • Рівні ізоляції транзакцій у БД

    Доволі детальний огляд аномалій у БД, рівнів ізоляції, які дозволяються уникнути аномалії, та імплементації цих рівнів. Багато використовую джерела та свої коментарі, в кінці декілька чит-шитів.

    Теми цього довгочиту:

    Бази Даних