zoukankan      html  css  js  c++  java
  • python --- getpass 模块常用方法

    在写python程序时,有时需要和用户进行交互,需要让用户输入用户名和密码。

      -  当然这个操作还是比较简单的,但是如果不做处理的话,就会有问题,用户输入用户名的时候没什么问题,但是用户输入密码的时候密码就会想用户名一样显示出来,这往往是不安全的,则需要导入 python 中自带的模块 getpass 来解决这个问题。

    优化前的代码:

    [root@localhost untitled]# vim user.py
    username = input('请输入用户名: ')
    password = input('请输入密码: ')
    print('-' * 50)
    print('您输入的用户名为: %s' % (username))
    print('您输入的密码为: %s' % (password))
    
    [root@localhost untitled]# python3 user.py 
    请输入用户名: 梁炳川
    请输入密码: 123qqq...A
    --------------------------------------------------
    您输入的用户名为: 梁炳川
    您输入的密码为: 123qqq...A
    View Code

    优化后的代码:

    [root@localhost untitled]# vim user.py
    import getpass        # 导入getpass模块
    username = input('请输入用户名: ')
    password = getpass.getpass('请输入密码: ')
    print('-' * 50)
    print('您输入的用户名为: %s' % (username))
    print('您输入的密码为: %s' % (password))
    
    [root@localhost untitled]# python3 user.py
    请输入用户名: 梁炳川
    请输入密码: 
    --------------------------------------------------
    您输入的用户名为: 梁炳川
    您输入的密码为: 123qqq...A
    View Code

    Shell也可以实现这个功能,代码如下:

    #!/bin/bash
    read -p "请输入用户名: " username
    stty -echo
    read -p "请输入密码: " password
    stty echo
    View Code
  • 相关阅读:
    Java基础08 继承
    Java基础07 包
    Java基础06 组合
    Java基础05 实施接口
    Java基础04 封装与接口
    Java基础03 构造器与方法重载
    Java基础02 方法与数据成员
    Java基础01 从HelloWorld到面向对象
    151. Reverse Words in a String
    168. Excel Sheet Column Title
  • 原文地址:https://www.cnblogs.com/liangbc/p/12635134.html
Copyright © 2011-2022 走看看