python生成随机密码

创建randpass.py脚本,要求如下:

  1. 编写一个能生成8位随机密码的程序
  2. 使用random的choice函数随机取出字符
  3. 改进程序,用户可以自己决定生成多少位的密码

导入random模块,通过random静态对象调用choice()方法,从自定义字符串all_chs中获取随机项,将获取到的随机字符ch与原result值进行拼接,将最终字符串结果返回给函数,for循环每循环一次获取一个随机字符,密码位数由循环次数决定,循环次数由传递参数值决定。

此程序需要注意的部分在于:

1.导入String模块,其中ascii_letters是生成所有字母,从a-z和A-Z,digits是生成所有数字0-9

2.将整个生成随机密码的代码封装进gen_pass()函数中,当模块文件直接执行时,调用函数即可输出结果

3.参数传递问题:调用函数无实参时,函数调用默认参数,有实参时,函数调用实际参数

 

实现此案例需要按照如下步骤进行。

步骤一:编写脚本

  1. vim randpass.py
  2. #!/usr/bin/env python3
  3. import random
  4. import string
  5.  
  6. all_chs = string.digits + string.ascii_letters
  7.  
  8. def gen_pass(n=8):
  9. result = ''
  10.  
  11. for i in range(n):
  12. ch = random.choice(all_chs)
  13. result += ch
  14. return result
  15.  
  16. if __name__ == '__main__':
  17. print(gen_pass())
  18. print(gen_pass(4))

步骤二:测试脚本执行

  1. python3 randpass.py
  2. 82wi2gOP
  3. XzMi
  4. [root@localhost day03]# python3 randpass.py
  5. 5wMoDEgC
  6. BDpc
  7. [root@localhost day03]# python3 randpass.py
  8. Ige2VGod
  9. Az0z
  10. [root@localhost day03]# python3 randpass2.py
  11. eajAocMH
  12. edW1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值