首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编写程序,生成随机密码。具体要求如下: (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
135
问题
请编写程序,生成随机密码。具体要求如下:
(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全国计算机二级
相关试题推荐
如果在命令窗口执行命令“LIST名称”后主窗口中显示记录号名称1电视机2计算机3电话线4电冰箱.5电线
在表设计器的“字段”选项卡中,字段有效性的设置项中不包括
在查询设计器环境中,“查询”菜单下的“查询去向”命令指定了查询结果的输出去向,输出去向不包括
在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的()。
内聚性是对模块功能强度的衡量,下列选项中,内聚性较弱的是()。
如果内存变量和字段变量均有变量名“姓名”,那么引用内存变量的正确方法是()。
在VisualFoxPro中,下列变量中需要事先定义是()。
下面是关于表单数据环境的叙述,其中错误的是()。
(1)用SQL语句进行以下查询:查询“外汇账户”表中的日元信息。查询结果包括钞汇标志、金额,结果按金额降序排序,并存储于表two.dbf中,并将SQL语句存储于新建的three.txt文件中。(2)用一对多报表向导建立报表,“外汇代码”表为父表,“外汇账
(1)用SQL语句完成下列操作:检索“田亮”所借图书的书名、作者和价格;结果按价格降序存入booktemp表中。(2)在考生文件夹下有一个名为menulin的下拉式菜单,请设计顶层表单formmenu,将菜单menulin加入到该表单中,使得运行
随机试题
While______yourimagination,youshouldbealoneandcompletelyundisturbed.
食管癌患者的术前准备不包括哪项
男性,52岁意识丧失1h,叹息样呼吸,颈动脉搏动消失,立即为其行胸外按压、气管插管、静脉输液、复苏药物、心电监测等措施。心脏复苏首选药物是
下面哪种血尿应考虑肾、输尿管结石
患者,男,32岁。自诉右上后牙近1个月来进食时有疼痛感,经口腔内科诊断16隐裂牙,尚未涉及牙髓。首先采用的治疗方案是
某患者,男,39岁,肺结核患者,肺内有空洞性病变。其胸部X线为()
背景材料:桌市政工程项目施工合同价为560万元,合同工期为6个月。施工合同规定如下:(1)开工前业主向施工单位支付合同价20%的预付款。(2)业主自第一个月起,从施工单位的应得工程款中按10%的比例扣留保留金,保留金限额暂定为合同价的5%,保留金到第
如果两个复本的施测相隔一段时间,则其信度称为()。
2016年8月21—25日,第33届国际地理学大会在北京举行。本届大会的主题是“构建我们的和谐世界”。突尼斯(东一区)、莫斯科(东三区)也举办过国际地理学大会。下图为地球公转轨道示意图。在此期间,下列关于北京的叙述正确的是()。
下列文学常识叙述有误的一项是:
最新回复
(
0
)