
正文
python中alp函数 python中alnum
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
Python加密程序
alp='abcdefghijklmnopqrstuvwxyz0123456789 '
def num2alp(c):
a = alp[c]
return(a)
def alp2num(d):
if d != ' ':
return((ord(d)-97)%37)
else:
return 36
def envVigenere(key,plaintext):
m = len(plaintext)
n = len(key)
etext = ""
for i in range(m):
p = plaintext[i]
k = key[i%n]
num1 = alp2num(p)
num2 = alp2num(k)
num3 = (num1+num2)%37
f = num2alp(num3)
etext = etext + f
return(etext)
print(envVigenere('lemon','attack at dawn'))
试试这个,我发现你的问题有两个:
alp2num
函数有问题,应该再进行下mod37,并且应当对空格做特殊处理
key没有使用正确使用
相关问答
Q1: 这道python题目里面,s1=‘’.join(s1)和alp=v是什么意思?
‘’.join()的意思是字符串的拼接函数,可以将一个可迭代对象拼接成一个字符串。
比如说你这个s1是一个列表的话,用了这个最后形成的就是列表里的每一个元素都按照‘’这个进行拼接。‘’这个是一个空字符串,还可以‘,’这个意思是用逗号连接列表中的每一个元素。
alp很明显就是一个变量呀,最后返回给调用者,这个变量记录的是最大出现次数的那个元素。
Q2: Python 加密程序
#coding=utf-8
def encode_key_text(key,text):
alp='abcdefghijklmnopqrstuvwxyz0123456789 '
num_key=[alp.find(i) for i in key]
num_text=[alp.find(i) for i in text]
if len(num_key)len(num_text):
num_long,num_short=num_text,num_key
else:
num_long,num_short=num_key,num_text
num_encode = [(num_short[i%len(num_short)]+num_long[i])%(len(alp)) for i in xrange(len(num_long))]
print num_encode
return ''.join([alp[i] for i in num_encode])
if __name__=="__main__":
key='lemon'
text='attack at dawn'
print encode_key_text(key,text)
当练手了,感兴趣可以关注我的python课程
Q3: python 编程 有了加密程序,怎么写解密程序
对 Python 加密时可能会有两种形式,一种是对Python转成的exe进行保护,另一种是直接对.py或者.pyc文件进行保护,下面将列举两种形式的保护流程。
1、 对 python转exe加壳
下载最新版Virbox Protector加壳工具,使用加壳工具直接对demo.exe进行加壳操作
2、对.py/.pyc加密
第一步,使用加壳工具对 python 安装目录下的 python.exe 进行加壳,将 python.exe 拖入到加壳工具 VirboxProtector 中,配置后直接点击加壳。
第二步,对.py/.pyc 进行加密,使用 DSProtector 对.py/.pyc 进行保护。
Q4: python新手的问题?
这个是字符串python中alp函数的切片python中alp函数,和列表python中alp函数的index类似
alp[0] 即字符‘A’
alp[-1] 即字符‘Z’
关于python中alp函数和python中alnum的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







