基于Python新建用户并产生随机密码过程解析

yipeiwu_com5年前Python基础

说明:本次代码是在Linux下执行的,windows也可以用,把添加用户密码的命令改成windows的就ok了

用Python新建用户并产生随机密码

import passwd_name as pn  #导入随机产生名字密码模块
import os

f = open("/tmp/userlist.txt","w")  将用户名、密码写入该文件中

for i in range(0,3):  #添加3位用户
  username=pn.random_name()
  os.system("useradd %s" %username)
  passwd = pn.random_passwd()
  os.system("echo %s | passwd --stdin %s" %(passwd,username))
  f.write("uesrname:%s password:%s\n" %(username,passwd))
  
f.close()

os.system("mail -s 'send user mail' root < /tmp/userlist.txt")  #最后将文件E-mail给root用户

产生随机名字、随机密码模块 passwd_name.py

import string
from random import choice

passwordrange=string.ascii_letters+string.digits  #密码包括数字大小写
usernamerange=string.ascii_uppercase  #名字只取大写字母
def random_passwd(num=8):  #密码默认取八位数,可以自定义
  letter=""
  for i in range(num):
    letter +=choice(passwordrange)
  print(letter)
  return letter

def random_name(num=5):  #名字默认取八位数,可以自定义
  letter=""
  for i in range(num):
    letter +=choice(usernamerange)
  print(letter)
  return letter  
if __name__=="__main__":
  random_passwd();
  random_name();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python内置函数——__import__ 的使用方法

Python内置函数——__import__ 的使用方法

__import__() 函数用于动态加载类和函数 。 如果一个模块经常变化就可以使用 __import__() 来动态载入。 语法 __import__ 语法: __import...

Python 取numpy数组的某几行某几列方法

Python 取numpy数组的某几行某几列方法

直接分析,如原矩阵如下(1):   (1) 我们要截取的矩阵(取其一三行,和三四列数据构成矩阵)为如下(2):   (2) 错误分析: 取 C 的1 3行...

python交换两个变量的值方法

大部分语言,例如c语言,交换两个变量的值需要使用中间变量。 例如交换a,b 伪代码: tmp = a a = b b = tmp python里面可以实现无临时变量的交换 (a,b...

python事件驱动event实现详解

python事件驱动event实现详解

所有的计算机程序都可以大致分为两类:脚本型(单次运行)和连续运行型(直到用户主动退出)。 脚本型:脚本型的程序包括最早的批处理文件以及使用Python做交易策略回测等等,这类程序的特点是...

浅谈Python的list中的选取范围

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。 Python有6个序列的内置类型,但最常见的是列表...