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

yipeiwu_com6年前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制作简单的朴素基数估计器的教程

假设你有一个很大的数据集,非常非常大,以至于不能全部存入内存。这个数据集中有重复的数据,你想找出有多少重复的数据,但数据并没有排序,由于数据量太大所以排序是不切实际的。你如何来估计数据集...

详解python 拆包可迭代数据如tuple, list

拆包是指将一个结构中的数据拆分为多个单独变量中。 以元组为例: >>> a = ('windows', 10, 25.1, (2017, 12, 29)) 假设数...

Windows下Python2与Python3两个版本共存的方法详解

Windows下Python2与Python3两个版本共存的方法详解

前言 一向用Python 3,最近研究微信公众号开发,各云平台只支持Python 2.7,想用其他版本需要自己搭建环境。而网上又搜不到Python 3开发微信公众号的资料。暂打算先使用P...

使用C++扩展Python的功能详解

使用C++扩展Python的功能详解

本文主要研究的是使用C++扩展Python的功能的相关问题,具体如下。 环境 VS2005Python2.5.4Windows7(32位) 简介 长话短说,这里说的扩展Python功能与...

Django如何开发简单的查询接口详解

前言 Django处理json也是一把好手,有时候在工作中各个部门都会提供自己的相关接口,但是信息也只是单方的信息,这时候需要运维将各个部门的信息进行集成,统一出一个查询接口或页面,方便...