Python编程生成随机用户名及密码的方法示例

355次阅读  |  发布于5年以前

本文实例讲述了Python编程生成随机用户名及密码的方法。分享给大家供大家参考,具体如下:

方案一:


    import random
    global userName,userPassword #为了便于使用,定义为全局变量
    userName = ''
    userPassword = ''
    def get_userNameAndPassword():
      global userName, userPassword
      usableName_char = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()_+=-><:}{?/" #可作为用户名的字符
      usablePassword_char ="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_.1234567890" #可作为密码的字符,根据所需可适当增减
      e_userName = [] #定义一个临时List变量,使用list.append添加字符
      e_userPassword = []
      for i in range(8):
        e_userName.append(random.choice(usableName_char))
      for j in range(6):
        e_userPassword.append(random.choice(usablePassword_char))
      print"e_userName = ", e_userName #输出用户名字符list
      print"e_userPassword = ", e_userPassword #输出密码字符list
      userName = ''.join(e_userName)
      userPassword = ''.join(e_userPassword)
    try:
      get_userNameAndPassword()
      print "用户名:", userName
      print "密码:", userPassword
    except Exception, e:
      print e.reason

程序输出:


    e_userName = ['q', 'M', '2', 'R', 'B', '}', '6', '=']
    e_userPassword = ['T', 'O', '4', 'C', 'H', '.']
    用户名: qM2RB}6=
    密码: TO4CH.

方案二(省去中间变量):


    #coding=utf-8
    import random
    global userName,userPassword #为了便于后面使用,定义为全局变量
    userName = ''
    userPassword = ''
    def get_userNameAndPassword():
      global userName, userPassword
      #8位用户名及6位密码
      userName = ''.join(random.sample("1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()_+=-><:}{?/",8))
      userPassword = ''.join(random.sample("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_.1234567890",6))
    try:
      get_userNameAndPassword()
      print "用户名:", userName
      print "密码:", userPassword
    except Exception, e:
      print e.reason

程序输出:


    用户名: GweV?2um
    密码: fwiOZL

常用第二种方法,直观简便。

注:(本例在python2.7下测试正常运行。)

PS:这里再为大家提供两款相关在线工具供大家参考使用:

在线随机数字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu

高强度密码生成器:
http://tools.jb51.net/password/CreateStrongPassword

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8