标签:unicode for 一个 加密 enter ret input 思路 文字
思路:将I Love You这样的字符串中的每一个字符,将他的Unicode码都就进行加或减去一个特定的数,
在传送过程中,如果被截获,获取的也是一段混乱的文章,当收到这段文章后,按相同的方式对Unicode编码减去或加上这个特定的数,就回到了原来的值,
注意:空格不做处理
小写字母,大写字母加或减去特定数后可能出现越过英文字母的Unicode码的边界,需要做处理:
message = input("Enter a message:") key = input("Enter shift number:") secret_message="" for lett in message: unicode = ord(lett)+int(key) if lett.isalpha(): if lett.isupper(): if unicode>ord(‘Z‘): unicode-=26 if unicode<ord("A"): unicode+=26 if lett.islower(): if unicode > ord(‘z‘): unicode -= 26 if unicode < ord("a"): unicode += 26 secret_message+=chr(unicode) else: secret_message+=lett print("加密后的字符串:",secret_message) print("****************变成明文的步骤*************") orig_message="" key=-1*int(key) for lett in secret_message: unicode = ord(lett) + int(key) if lett.isalpha(): if lett.isupper(): if unicode > ord(‘Z‘): unicode -= 26 if unicode < ord("A"): unicode += 26 if lett.islower(): if unicode > ord(‘z‘): unicode -= 26 if unicode < ord("a"): unicode += 26 orig_message += chr(unicode) else: orig_message += lett print("明文是:",orig_message)
标签:unicode for 一个 加密 enter ret input 思路 文字
原文地址:https://www.cnblogs.com/lyxcode/p/10912508.html