①大小写转换:将明文中的大写字母改为小写字母
②置换加密:根据输入的置换密码,将字符串中的字母和数字逐个加上置换密码中的对应数字 循环左移 ,置换密码可 以循环使用 。如原文为 “hello2023”,置换密钥为 “526”,则加密为 “ccfgm6507”。(明文字符 h、e、l、l、o、2、0、2、3 分别往左移 5、2、6、5、2、6、5、2、6 位)
③除字母、数字以外的字符不变。
def change(ch):
ch=chr()
return ch
def encypt (encode ,key):
q=[]
result=’’
for x in key:
q.append(int(x))#将密钥逐个转为数值,并放到 q 中
head=0
for ch in encode:
if "A"<=ch<="Z":
ch=change(ch)
if "a"<=ch<="z":
ch=chr((ord(ch)-97-q[head])%26+97)
elif "0"<=ch<="9":
ch=
head=
result+=ch
return result
mw=input("请输入明文:")
key=input("请输入置换密钥:")
ss=encypt()
print("密文为:"+ss)