本帖最后由 ouyang9r 于 2022-3-18 23:08 编辑
感谢分享,希望可以使用Markdown代码块进行排版,像这样:
#明文
message = "www.52pojie.cn"
#加密/解密密钥
key = 3
#设置模式->加密还是解密
mode = "decrypt"
#可供加密的符号
ENCRYPT_WORD = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz123456789 !?."
#存储加密/解密后的密文/明文形式
translation = ""
for encry_word in message:
if encry_word in ENCRYPT_WORD:
encry_word_index = ENCRYPT_WORD.find(encry_word)
#开始执行加密/解密
if mode == 'encrypt':
translation_index = encry_word_index + key
elif mode == 'decrypt':
translation_index = encry_word_index - key
#如果长度需要进行回环,则执行以下代码
if translation_index >= len(ENCRYPT_WORD):
translation_index = translation_index - len(ENCRYPT_WORD)
elif translation_index < 0:
translation_index = translation_index + len(ENCRYPT_WORD)
translation = translation + ENCRYPT_WORD[translation_index]
else:
#添加未加解密的符号
translation = translation + encry_word
#输出
print(translation)
#密钥key=3时
#加密后的结果:zzzC85srmlhCfq
#zzzC85srmlhCfq解密后的结果:www.52pojie.cn[/mw_shl_code]
|