#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
Author: Linxy -- <592901071@qq.com>
Purpose: "此程序用于生成指定位数的同时包涵大小写字母、数字0-9、及特殊符号~!@#$%^&*()_+`[]{}|<>的字符串"
Created: 2017/6/3
"""
import random
import sys
print("此程序用于生成指定位数的同时包涵大小写字母、数字0-9、及特殊符号~!@#$%^&*()_+`[]{}|<>的字符串")
print("注意:由于数字1与小写l比较相似所以生成的字符串里不包涵小写的l")
n=input("请输入一个大于等于4的数字:")
try:
n1=int(n)
except ValueError:
print("输入不能为空或者非数字")
x=input()
sys.exit()
l=[]
if n1<4:
print("输入的数字必须大于等于4")
x=input()
sys.exit()
a1=n1//4
b1=random.randint(1,a1)
b2=random.randint(1,a1)
b3=random.randint(1,a1)
b4=random.randint(1,a1)
b5=n1-b1-b2-b3-b4
for i in range(0,b1):
l.append(random.choice("abcdefghijklmnopqrstuvwxyz"))
for i in range(0,b2):
l.append(random.choice("ABCDEFGHIJKLMNOPQRSTUVWXYZ"))
for i in range(0,b3):
l.append(str(random.randint(0,9)))
for i in range(0,b4):
l.append(random.choice("~!@#$%^&*()_+`[]{}|<>"))
for i in range(0,b5):
l.append(random.choice("~!@#$%^&*()_+`[]{}|<>ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijkmnopqrstuvwxyz"))
#print(l)
random.shuffle(l)
#print(l)
l2="".join(l)
print("生成的字符串为:")
print(l2)
print("\n")
print("请复制上述字符串并注意记录。")
print("请按任意键退出!")
x=input()
#if __name__=='__main__':#此处可以理解为固定格式 详细可查查__name__ __main__的具体意义
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。