python题:随机密码生成。编写程序,在26个字母大小写和9个数字组成的列表中随机生成10个8位密码

python题:随机密码生成。编写程序,在26个字母大小写和9个数字组成的列表中随机生成10个8位密码,第1张

keep_words=['and','as','assert','break','class','continue',

'def','del','elif','else','except','finally',

'for','from','global','if','import','in','is',

'lambda','nonlocal','not','or','pass','raise',

'return','try','while','time','with','yield','True',

'False','None']

def upper_word(fname_tem,num,keep):

file_tem=open('{}py'format(format(fname_tem)),'r',encoding='utf-8')

file_new=open('{}_changedpy'format(format(fname_tem)),'w',encoding='utf-8')

#逐行读取,逐行处理,逐行写入

for line in file_tem:

for word in keep_words:

if word in line:

num=num+1

keep['编号%s'%str(num)]=word

line=linereplace(word,'编号%s'%str(num))

else:

continue

line=lineupper()

for key in keepkeys():

if key in line:

line=linereplace(key,keep[key])

file_newwrite(line)

file_temclose()

file_newclose()

def main():

num=100

keep={}

fname_tem=input('请输入Python源代码文件名:')

upper_word(fname_tem,num,keep)

main()

扩展资料:

定义和用法

<input>标签用于搜集用户信息。

根据不同的type属性值,输入字段拥有很多种形式。输入字段可以是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等等。

input()函数直接接受且不改变输入数据的类型,但是需要注意的是使用input()在输入字符串时需要添加引号,否则会报错。

<2>end=''标明在end后面传递一个空字符串,这样print函数不会在字符串末尾添加一个换行符,而是添加一个空字符串,也就是说,它的意思是末尾不换行,加空格。

HTML与XHTML之间的差异

在HTML中,<input>标签没有结束标签。

在XHTML中,<input>标签必须被正确地关闭。

Private Sub Command1_Click()

Dim a As Integer, b As Integer, c As Integer

Dim i As Integer, j As String

i = 100 + Int(Rnd 900)

a = Int(i / 100)

b = i Mod 100

c = b Mod 10

b = Int(b / 10)

j = c & b & a

MsgBox i & "," & j

End Sub

vb与c的区别:

这二者都市程序开发语言,c语言不支持可视化编程,vb支持可视化编程,从功能上考虑,二者均可完成任何一种开发需求,但是对于做界面,c会变得很麻烦,vb则相对简单。vb语言的语法要求不严格,可以不事先声明变量(当然是个人设置的),c必须先声明后使用,vb是一种事件驱动的程序结构,c的程序必须从一个main函数开始,c支持指针,v b不支持。

c入门相对较难,vb则很容易入门,但是后续的深入学习c会变得相对容易。c可以用来做一些底层的和计算机硬件相关的开发工作,v b在这方面相对较差。

第一题:在Change事件中进行判断,主要条件是9位学号,前2位年级,第5位类型

Private Sub Text1_Change()

If Len(Text1Text) = 9 Then '等于9位才进行判断

Select Case Left(Trim(Text1Text), 2)'取前2位判断年级

Case "01"

Text2Text = "一年级" '01,02,03代表年级

Case "02"

Text2Text = "二年级"

Case "03"

Text2Text = "三年级"

Case Else

Text2Text = ""

Text3Text = "" '超出范围即无效学号,清空显示

End Select

Select Case Mid(Trim(Text1Text), 5, 1)取第5位判断类型

Case "2"

Text3Text = "博士" '2-博士,3-硕士,4-本科,5-专科

Case "3"

Text3Text = "硕士"

Case "4"

Text3Text = "本科"

Case "5"

Text3Text = "专科"

Case Else

Text2Text = ""

Text3Text = "" '超出范围即无效学号,清空显示

End Select

Else

Text2Text = ""

Text3Text = ""

End If

End Sub

第二题:主要条件是即时转换,对写入及删除产生一个即时效果,大小写及非字字母转换,所以在Change中判断,用ASC、Chrw检测及转换。

Private Sub Text4_Change()

Text5Text = "" '清空显示框

For i = 1 To Len(Text4Text)'取每一位字符

Select Case Asc(Mid(Text4Text, i, 1))'对每一位字符判断

Case 65 To 90 '大写字母

Text5Text = Text5Text & ChrW(Asc(Mid(Text4Text, i, 1)) + 32)'转小写

Case 92 To 122 '小写字母

Text5Text = Text5Text & ChrW(Asc(Mid(Text4Text, i, 1)) - 32)'转大写

Case Else

Text5Text = Text5Text & ""'转星号

End Select

Next

End Sub

第三题:由于用复选框作选择,复选框的值为0或1,数值型,问题条件只是0或255固定值,所以直接乘255就可以满足条件。(建议使用三个滑块,效果更好)

在3个复选框的Click事件中写

Private Sub Check1_Click()

Form1BackColor = RGB(Check1Value 255, Check2Value 255, Check3Value 255)

End Sub

Private Sub Check2_Click()

Form1BackColor = RGB(Check1Value 255, Check2Value 255, Check3Value 255)

End Sub

Private Sub Check3_Click()

Form1BackColor = RGB(Check1Value 255, Check2Value 255, Check3Value 255)

End Sub

不同的校准方式有不同的校准时间,一般一天校准一次就好了。

斗GPS卫星时钟能够同时接收北斗/GPS双星系统,接收国产北斗卫星系统和美国GPS全球定位系统卫星。卫星时钟怎么校准时间:时钟校时方式分别为B码校时,脉冲校时,串口校时。1、串口校时:串口通信方式是以串行数据流的方式输出时间信息,各个自动保护装置接收每秒1次的串行时间信息进行校时。在此种校时过程中,串口发送和接收数据都采用中断方式,双方的中断处理程序都将占用CPU的时间。此外延时长短还与双方串口中断优先级的设置有关。另外,在串行通信方式中,数据是按照一定的波特率逐位传输的,因此总线传输也将有延时。该延时长短与波特率以及传输的数据量均有关。2、脉冲校时:脉冲校时方式,即同步时钟每隔一定的时间间隔输出一个精确的同步脉冲,监控装置在接收到同步脉冲后进行校时,消除装置内部时钟的走时误差。因此,不管是秒脉冲还是分脉冲和小时脉冲,其校时原理都是一样的。在脉冲校时方式中,导线传输、光耦隔离以及中断响应和处理中断程序都会产生延时,整个延时时间约几十微秒,所以即使不进行数据间修正,精度也可以满足时间误差要求在毫秒级的装置的需要。3、B码校时:IRIG时间码标准有二大类。一类是并行时间码格式,这类码由于是并行形式,传输距离较近,且是二进制,因此应用远不如串行格式广泛。另一类是串行时间码,共有六种格式。即IRIG—A、B、D、E、G、H。它们的主要差别是时间码的帧速率不同,从最慢的每小时一帧的D格式到最快的每十毫秒一帧的G格式。各种格式的主要参数如下表所述。__为了便于传递,可用标准正弦波载频进行幅度调制。标准正弦波载频的频率与码元速率严格相关。B码的标准正弦波载频频率为1KHz。同时,其正交过零点与所调制格式码元的前沿相符合,标准的调制比为10比3。调制后的B码通常称IRIG-B(AC)码,未经幅度调制的通常称IRIG-B(DC)码。_IRIG-B格式时间码(简称B码)为国际通用时间格式码,用于各系统的时间同步。“B码解码接口卡”为EISA(或ISA)总线接口卡,将标准时统设备送来的IRIG-B(DC)码,解码出时、分、秒,并加入毫秒信息,送入主计算机,以校准本机的系统时间。_IRIG-B码的时间信号产生器,以频率源频标,从分频链上取得不同频率的信号,提供本地标准频率和标准时间信号。该产生器由输入整形、分频器、数字开关移相器、延迟秒形成、本地秒形成等电路组成。其设计包括方案确立、底层分析、顶层综合、仿真等步骤。其中底层分析又分为分频单元及延时脉冲产生单元两部分

我收回以下的话,因为我看到了“键盘上的灵魂”等人的回答。之所以说这些是因为以前有次在知道里回答问题结果提问者选了一个最错的答案,让我很气愤。。

''''我本来不想回答,因为在知道上回答问题太亏了,我重视的不是积分,

''''而是中选率。回答这样的问题很多人都是看了答案以后一知半解,

''''随便选一个就通过了。根本不管我的答案是真正正确的。

一、t1~t5 没有经过声明,在vb中默认是可以使用的,只要你的代码最上面没有“option explicit”声明。而关于数据类型,几位都没有说出来,其实这却是根本所在:没有声明的变量类型是Variant类型。

但是不声明在编程语言里是不规范的。

这个类型叫做“变体”,就相当于是其他语言里面的object类型。他可以接受任何类型的赋值。如:

dim a as integer,b as string,v as variant 'v可以不声明

v=a

v=b

都可以。

而t1 = (s1 + s2 + s3 + s4 + s5 >= 450)

其实是

t1的值此时是什么呢?

我们知道 if a>0 then 这句中,a>0所产生的结果是 true或false,也就是Boolean类型。所以当 >、>=、<、<=、=(作为比较是否相等的时候) 作为值赋给变量的时候,它是作为Boolean类型的。

而t1是variant类型,可以兼容Boolean型,因此直接作为Boolean型来用。

如果用整形来存储boolean型,vb自动将true转换为-1,而false转换为0。

说的多了点,但是了解这些才能更好的学习编程。

再多说一句:true之所以转换为-1,是为了做or或and运算,vb的本意是用这两个运算符做位运算,但是实际人们都用来做逻辑运算,-1转换为16进制是FFFF FFFF,而0转换是0000 0000,正好满足or和and的位 *** 作和逻辑 *** 作的一致性。

二、我不知道你的程序是哪里里来的,我要告诉你一点,你的程序是错的!

有没有人注意到,dim s1 as string 这句话。后来有一句:t1=(s1+s2++s5>=450)我知道你的本意是要判断总成绩大于450分,但是你前面定义的是string类型的数据,string类型的+运算符是连接符,因此如果s1~s5分别为1分到5分,那么s1+s2++s5就等于“12345”,12345当然会大于450,但是总分才15分,显然逻辑上是错误的。

数据类型真的很重要的。

应该改为 dim s1 as single,s2 as single

解释你的问题:

if t1 or t2 or t3 then p="" else p=""

这句话,显然是将 t1,t2,t3 三个变量作为Boolean类型进行判断。

t1,t2,t3三个值只要有一个是 True 就满足条件。or 运算符就是只要有一个为true结果就是true

p=这句话就是一个字符串连接 *** 作。

str()函数是将数字转换为字符串,没什么难的,“&”是字符串的标准连接符,与“+”的区别是

3+4=7 ,而 "3"+"4"="34","3"+4="34" 更正见下

3&4="34","3"&"4"="34","3"&4="34"

你自己体会一下就明白了。

Chr(13)是一个回车,就是换一行显示。可以写成VbNewLine。

p= & p 的意思是在p的前面添加其他字符串

两个语句的自然语言意义是:

如果 t1 ,t2 ,t3 之中有一个条件满足,则令 p 等于“可以获奖”否则 p 等于“不能获奖”

然后在 p 的前面添加得分列表和一个换行符。

p最终变成了“

32,4,32,53,89

不能获奖

看不懂没关系,以后慢慢会懂的。不过你应该能知道谁回答的正确。

楼下的谢谢,我知道是有区别的,在内存中的存储和基本用法是一样的。所以一直当作一样的来说。实质上vb6-没有继承,所以在逻辑上的关系是不一样的。vbnet就把基本的variant改成了object了。

-----------------------------------------------------------------------

再更正一下:上面标记的地方我说错了一点,就是 "3"+4 应该等于 7 !当时没有确认一下,对不起,在此谢罪,各位中秋快乐

已经是第二次了,最初,我输入了很多文字,结果多按了一下ESC,就全都没有了。。。刚才点了个优化大师上的链接,d出个网页,把这个页面给覆盖了。输入的东西又没了。。

再写一次。。

我自己试过的:输入“1,2,3,4,5”这五个成绩,得出的结果是可以得奖,所以是错误的。

vb里面的加号对变体对象是一个相当头疼的运算符。

它遵循下面几个规则:

1如果两边都是字符串,他就做连接 *** 作,"3"+"4"="34"

2如果两边都是数值,就做算数 *** 作,3+4=7

3如果一边是数值一边是字符串,则:

如果字符串可以转为数值,则取算数 *** 作。"3"+4=7

否则提示出错:3+"k"错误:类型不匹配,要进行连接请使用 & 运算符。

而"&"运算符则遵循:

1运算符两边任何值都转换为字符串。

2当数字转换为字符串的时候是默认调用format(i)进行转换的。

而且当数字赋值给字符串变量时,自动转换为字符串,所取转换函数为format(i)。可见你的代码:

dim s1 as string

s1=val(input) '假设这里输入一个"3"

s1的结果就是 s1=format(val("3")) ,经过两次转换之后,s1的值为"3",是字符串类型。

由上面加号的规则,就是连接 *** 作。

由此可见,数值类型的选择更为重要:

1只要确定你的变量取值,一定要用确切的类型。

2定义时要注意,dim i,j,k as integer,的结果不是你想象的那样,三个类型都是integer型,而是只有k是integer型,而i和j是variant型。正确的应该是dim i as integer,j as integer,k as integer。

3variant可以用来代表字符串,数字,数组,对象……任何类型,但是处理起来最麻烦,尽量不要使用,不过也很难避免,比如split函数和把数组作为参数传递的时候,用variant很方便。

4基本数值类型转换要用标准转换函数好一些:cstr,cint,cdbl,cbool,clng,cbyte……因为这些函数的数据类型比较确定。

多说两句,比较format(3)和str(3)和cstr(3)三个转换为字符串的函数:

format(3)和CStr(3)得到的结果都是"3"

str(3)得到的结果是" 3",数字前面有空格,并不是永远会有空格,只是因为前面省略了正号"+",如果是负数就没有空格了,就是"-3"

format(3,"00")的结果是"30",这就是用format的优势。

日期也可以用format来格式化

format(now,"yyyy年代MM月分dd太阳,HH点了mm分钟ss秒针")就可以以固定的格式输出。

<script>

function yzm(){

var arr = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5','6','7','8','9'];

var str = '';

for(var i = 0 ; i < 4 ; i ++ )

str += ''+arr[Mathfloor(Mathrandom()  arrlength)];

return str;

}

</script>

<button onclick="documentgetElementById('yzm')innerHTML = yzm();">重获验证码</button>

<div id="yzm"></div>

以上就是关于python题:随机密码生成。编写程序,在26个字母大小写和9个数字组成的列表中随机生成10个8位密码全部的内容,包括:python题:随机密码生成。编写程序,在26个字母大小写和9个数字组成的列表中随机生成10个8位密码、vb程序设计:随机产生一个三位正整数,然后逆序输出该数,产生的数与逆序数同时显示。要用两种方法。、VB的程序代码,达人来帮忙等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10205700.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存