首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写程序,生成随机密码。具体要求如下: (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
167
问题
请编写程序,生成随机密码。具体要求如下:
(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://www.kaotiyun.com/show/6W6p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
如果在命令窗口执行命令“LIST名称”后主窗口中显示记录号名称1电视机2计算机3电话线4电冰箱.5电线
在VisualFoxPro中,下面描述正确的是
打开数据库的命令是
第(36)~(40)使用如下关系:客户(客户号,名称,联系人,邮政编码,电话号码)产品(产品号,名称,规格说明,单价)订购单(订单号,客户号,订购日期)订购单名细(订单号,序号,产品号,数量)查询客户名称中有“网络”二字的客户信息的正确命令是(
在VisualFoxPro中,下面关于索引的描述错误的是()。
在VisualFoxPro的工作1区和3区打开了数据表文件,再接着执行SELECT0后,选择工作区的结果是()。
在考生文件夹下创建一个下拉式菜单mymenu.mnx,并生成菜单程序enu.mpr。运行该菜单程序时会在当前VFP系统菜单的末尾追加一个“考试”子菜单,如图3.13所示。菜单命令“统计”和“返回”的功能都通过执行过程完成。菜单命令“统计”的功能是统计2
在考生文件夹下,打开学生数据库sdb,完成如下简单应用:(1)使用报表向导建立一个简单报表。要求选择student表中所有字段;记录不分组;报表样式为“随意式”;列数为“1”,字段布局为“列”,方向为“纵向”;排序字段为“学号”(升序);报表标题为“学生基
下列选项中不属于软件生命周期开发阶段任务的是()。
假设s的值是“浙江电视台中国好声音”,如下函数结果返回“中国好声音”的是
随机试题
膀胱癌镜下类型有
某HIV感染者,近日出现继发感染、衰竭、免疫缺陷等AIDS症状,入院治疗。目前认为最有效的治疗药物是
某证券组合今年实际平均收益率为0.15,当前的无风险利率为0.03,市场组合的风险溢价为0.06,该证券组合的β值为1.5。那么,根据詹森指数评价方法,该证券组合绩效( )。
2012年,某省加大扶持贫困残疾人力度,财政投入扶贫资金3816.3万元,比上年大幅增长18%。扶持贫困残疾人56561人,脱贫35110人。享受优惠政策的贫困残疾人117727人,比上年增加3%。截至2012年底,城镇残疾人安排就业人数
在凯恩斯的流动性偏好理论中,投机性货币需求把用于贮存财富的资产划分为()。
下列各句中,没有错别字的一句是()。
设二维随机变量(X,Y)服从二维正态分布,且X~N(1,32),Y~N(0,42),且X,Y的相关系数为求ρXZ;
设f(x,y)为连续函数,且,其中D是由y=0,y=x2,x=1所围成的区域,求f(x,y).
AmazontodayunveiledDashButtons,aneasywayforcustomersto【C1】______selectbulkgoods【C2】______aninternet-connectedbut
OnPublicSpeakingI.People’sfrequentresponsetogivingtheirfirstspeech:feel【T1】______【T1】______II.Thespeaker’ssecr
最新回复
(
0
)