首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写程序,生成随机密码。具体要求如下: (1)使用random库,采用0x1010作为随机数种子。 (2)密码由26个字母大小写、10个数字字符和!@#$%∧&*等8个特殊符号组成。 (3)每个密码长度固定为10个字符。 (4)程序运行每次产生10个密码
请编写程序,生成随机密码。具体要求如下: (1)使用random库,采用0x1010作为随机数种子。 (2)密码由26个字母大小写、10个数字字符和!@#$%∧&*等8个特殊符号组成。 (3)每个密码长度固定为10个字符。 (4)程序运行每次产生10个密码
admin
2019-08-30
116
问题
请编写程序,生成随机密码。具体要求如下:
(1)使用random库,采用0x1010作为随机数种子。
(2)密码由26个字母大小写、10个数字字符和!@#$%
∧
&*等8个特殊符号组成。
(3)每个密码长度固定为10个字符。
(4)程序运行每次产生10个密码,每个密码一行。
(5)每次产生的10个密码首字符不能一样。
(6)程序运行后产生的密码保存在“随机密码.txt”文件中。
选项
答案
import random random.seed(0x1010) s=’’abcdefghijklmnopqrstuvwxyzABCDEFGHUKLMNOPQRSTUVWXYZ\ 1234567890!@#$%
∧
&*’’ ls=[] excludes=’’’’ while len(ls)<10: pwd=’’’’ for i in range(10): pwd+=S[random.randint(0,len(s)一1)] if pwd[0]in excludes: continue else: ls.append(pwd) excludes+=pwd[0] fo=open(’’随机密码.txt’’,’’w’’) fo.write(’’\n”.join(ls)) fo.close()
解析
这是一个综合应用题,考核随机数及文本操作能力。
本题目涉及产生10个随机密码,但要求随机密码首位不能相同,可以考虑随机生成密码并判断是否首位已经存在,如果存在则再次生成密码。因此,这种模式无法确定循环产生密码的总次数,程序框架应采用while语句实现。
题目规定了密码采用的字符信息,共44个,含字母、数字和特殊符号,可以将这些字符组织成字符串,便于后续根据其中字符生成密码。
程序主体逻辑包括:生成一个10字符长度密码,判断首位是否在已生成密码首位组成的排除字符串excludes中,如果存在,则再次生成密码,否则将生成密码的首位加入排除字符串excludes中。所生成密码存储在列表变量ls中,每个密码为列表中一个元素。最后,将密码输出到文件。
综上,参考代码及注释如下:
import random
random.seed(0x1010) #设置随机数种子
s=’’abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\
1234567890!@#$%
∧
&*’’
ls=[] #保存生成的随机密码
excludes=’’’’
while len(18)<10: #程序主要的while循环
pwd=’’’’
for i in range(10):
pwd+=s[random.randint(0,len(s)一1)]
if pwd[0]in excludes:
continue #首位存在,则继续循环再生成新的密码
else:
ls.append(pwd)
excludes+=pwd[0] #生成的密码首位加入排除字符串excludes
fo=open(’’随机密码.txt’’,’’w’’)
fo.write(’’\n’’.join(ls))
fo.close()
转载请注明原文地址:https://kaotiyun.com/show/6W6p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
下列二叉树描述中,正确的是()。
数据结构中,与所使用的计算机无关的是数据的()。
下面题使用如下的“外汇名”表和“持有数”表:“外汇名”表:
以下题目使用如下三个表:部门.dbfi部门号C(8),部门名C(12),负责人C(6)职工.dbf.部门号C(8),职工号C(10),姓名C(8),性别C(2),出生日.期D(8)工资.dbf:职工号C(10),基本工资N(8.2),津贴N(8.2)
要设置日期时间型数据中的年份用4位数字显示,应使用下列哪条命令()。
设计名为formbook的表单(控件名为forml,文件名为formbook)。表单的标题设为“图书情况统计”。表单中有一个组合框(名称为Combo1)、一个文本框(名称为Textl)和两个命令按钮“统计”(名称为Commandl)和“退出”(名称为C
(1)用SQL语句完成下列操作:列出“林诗因”持有的所有外币名称(取自。rateexchange表)和持有数量(取自currencysl表),并将检索结果按持有数量升序排序存储于表ratetemp中,同时将所使用的SOL语句存储于新建的文本文件rat
(1)打开程序文件progerr.prg,按文件中给出的功能要求改正其中的错误,以文件名prognew.prg重新保存该文件并运行程序。(2)建立顶层表单,表单文件名为myform.scx,表单控件名为myform,表单标题为“顶层表单”。为项层表单建立
(1)在考生文件夹下有一个数据库“图书借阅”,使用报表向导制作一个名为tsrepo的报表,存放在考生文件夹下。要求:选择borrows表中所有的字段。报表样式为“经营式”,报表布局:列数“1”,字段布局“列”,方向“纵向”,按“借书证号”字段升序排序,报表
在考生文件夹下,打开资源数据库frdb,完成如下简单应用:(1)使用表单向导选择资源表frt生成一个名为fr_edit的表单。要求选择frt表中所有字段,样式为阴影式;按钮类型为图片按钮;排序字段选择户主编号(升序);表单标题为“资源数据输入维护”。
随机试题
以下风险中,不属于非人员风险的是()
林德布洛姆把互相调适的渐进方法称为解决社会问题的()
再生障碍性贫血与白血病的共同表现是
初产妇,28岁。足月妊娠临产,2小时前肛查宫口开4cm,现肛查宫口仍开4cm,检查:宫缩7~8分钟一次,持续时间30秒。胎膜未破,余无异常。从产程图上可以看出,该产妇存在的问题是
一般意义上的经济投机,是指一种买或卖的活动,其目的是在价格有变化时,通过买进或卖出赚取利润。()
由于不可抗力造成现场停工及部分设施损坏,承包商可索赔()费用。
根据我国预算法规定,下列哪个机构负责审查和批准中央预算?()
上幼儿园中班的小宇,上课期间尿了裤子,刘老师发现后,对正在嘲笑小宇的其他幼儿说:“小宇可能是上课听得太认真了,忘记了告诉老师要上厕所,我们以后可以向小宇学习他认真听课的好习惯。当然,我们在认真听课的同时,要记住自己还要上厕所,那就更好了。”刘老师的做法体现
A、Becauseitwillreducethechanceofgettingajob.B、Becauseitisfulloffraud.C、Becauseitwillbecomethegraduates’onl
A、HeisveryinterestedinJapaneseculture.B、HeplanstotraveltoJapannextyear.C、HewillbeonshortbusinesstripinJap
最新回复
(
0
)