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

yipeiwu_com6年前Python基础

本文实例讲述了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程序设计有所帮助。

相关文章

pygame游戏之旅 添加碰撞效果的方法

pygame游戏之旅 添加碰撞效果的方法

本文为大家分享了pygame游戏之旅的第7篇,供大家参考,具体内容如下 对car和障碍的宽高进行比较然后打印即可: if y < thing_starty + thing_he...

Python实现基于POS算法的区块链

Python实现基于POS算法的区块链

区块链中的共识算法 在比特币公链架构解析中,就曾提到过为了实现去中介化的设计,比特币设计了一套共识协议,并通过此协议来保证系统的稳定性和防攻击性。 并且我们知道,截止目前使用最广泛,...

Python2与Python3的区别实例分析

本文实例讲述了Python2与Python3的区别。分享给大家供大家参考,具体如下: python2与python3的区别 1、性能 2、编码格式utf-8 3、打印语句变成了打印函数...

python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法

python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法

PyAutoGUI是一个纯Python的GUI自动化工具,其目的是可以用程序自动控制鼠标和键盘操作,利用它可以实现自动化任务 本章介绍了许多不同函数,下面是快速的汇总参考: moveTo...

KMP算法精解及其Python版的代码示例

KMP算法是经典的字符串匹配算法,解决从字符串S,查找模式字符串M的问题。算法名称来源于发明者Knuth,Morris,Pratt。 假定从字符串S中查找M,S的长度ls,M的长度lm,...