前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >新Python项目:替换式密码

新Python项目:替换式密码

作者头像
嘉嘉123
发布2022-12-14 19:58:28
5090
发布2022-12-14 19:58:28
举报
文章被收录于专栏:嘉嘉的博客嘉嘉的博客

2022 Update:**警示后人:不查自带函数的后果很严重! **额…发现可以把文字转码后+1/-1来实现

最近我才学定义函数,写了一个替换式密码小程序。

1.替换式密码.py

这个程序是可以被调用的,一共有两个函数,分别是jiami"(加密)jiemi(解密)。jiami调用时传入两个参数,第一个是明文,第二个是移位值,传回密文。jiemi调用时也传入两个参数,第一个是密文,第二个是移位值,传回明文。

代码语言:javascript
复制
# 文件名:替换式密码.py
# 包括两个函数

def jiami(ming, yi):
    mi = ""
    ming_old_list = list(ming)
    ming = ""
    for y in range(0, yi):
        for i in ming_old_list:
            if i == "a":
                mi += "b"
            elif i == "A":
                mi += "B"

            elif i == "b":
                mi += "c"
            elif i == "B":
                mi += "C"

            elif i == "c":
                mi += "d"
            elif i == "C":
                mi += "D"

            elif i == "d":
                mi += "e"
            elif i == "D":
                mi += "E"

            elif i == "e":
                mi += "f"
            elif i == "E":
                mi += "F"

            elif i == "f":
                mi += "g"
            elif i == "F":
                mi += "G"

            elif i == "g":
                mi += "h"
            elif i == "G":
                mi += "H"

            elif i == "h":
                mi += "i"
            elif i == "H":
                mi += "I"

            elif i == "i":
                mi += "j"
            elif i == "I":
                mi += "J"

            elif i == "j":
                mi += "k"
            elif i == "J":
                mi += "K"

            elif i == "k":
                mi += "l"
            elif i == "K":
                mi += "L"

            elif i == "l":
                mi += "m"
            elif i == "L":
                mi += "M"

            elif i == "m":
                mi += "n"
            elif i == "M":
                mi += "N"

            elif i == "n":
                mi += "o"
            elif i == "N":
                mi += "O"

            elif i == "o":
                mi += "p"
            elif i == "O":
                mi += "P"

            elif i == "p":
                mi += "q"
            elif i == "P":
                mi += "Q"

            elif i == "q":
                mi += "r"
            elif i == "Q":
                mi += "R"

            elif i == "r":
                mi += "s"
            elif i == "R":
                mi += "S"

            elif i == "s":
                mi += "t"
            elif i == "S":
                mi += "T"

            elif i == "t":
                mi += "u"
            elif i == "T":
                mi += "U"

            elif i == "u":
                mi += "v"
            elif i == "U":
                mi += "V"

            elif i == "v":
                mi += "w"
            elif i == "V":
                mi += "W"

            elif i == "w":
                mi += "x"
            elif i == "W":
                mi += "X"

            elif i == "x":
                mi += "y"
            elif i == "X":
                mi += "Y"

            elif i == "y":
                mi += "z"
            elif i == "Y":
                mi += "Z"

            elif i == "z":
                mi += "a"
            elif i == "Z":
                mi += "A"

            else:
                mi += i
        ming_old_list = list(mi)
        mi_str = mi
        mi = ""
    return mi_str


def jiemi(mi, yi):
    ming = ""
    mi_old_list = list(mi)
    mi = ""
    for y in range(0, yi):
        for i in mi_old_list:
            if i == "a":
                ming += "z"
            elif i == "A":
                ming += "Z"

            elif i == "b":
                ming += "a"
            elif i == "B":
                ming += "A"

            elif i == "c":
                ming += "b"
            elif i == "C":
                ming += "B"

            elif i == "d":
                ming += "c"
            elif i == "D":
                ming += "C"

            elif i == "e":
                ming += "d"
            elif i == "E":
                ming += "D"

            elif i == "f":
                ming += "e"
            elif i == "F":
                ming += "E"

            elif i == "g":
                ming += "f"
            elif i == "G":
                ming += "F"

            elif i == "h":
                ming += "g"
            elif i == "H":
                ming += "G"

            elif i == "i":
                ming += "h"
            elif i == "I":
                ming += "H"

            elif i == "j":
                ming += "i"
            elif i == "J":
                ming += "I"

            elif i == "k":
                ming += "j"
            elif i == "K":
                ming += "J"

            elif i == "l":
                ming += "k"
            elif i == "L":
                ming += "K"

            elif i == "m":
                ming += "l"
            elif i == "M":
                ming += "L"

            elif i == "n":
                ming += "m"
            elif i == "N":
                ming += "M"

            elif i == "o":
                ming += "n"
            elif i == "O":
                ming += "N"

            elif i == "p":
                ming += "o"
            elif i == "P":
                ming += "O"

            elif i == "q":
                ming += "p"
            elif i == "Q":
                ming += "P"

            elif i == "r":
                ming += "q"
            elif i == "R":
                ming += "Q"

            elif i == "s":
                ming += "r"
            elif i == "S":
                ming += "R"

            elif i == "t":
                ming += "s"
            elif i == "T":
                ming += "S"

            elif i == "u":
                ming += "t"
            elif i == "U":
                ming += "T"

            elif i == "v":
                ming += "u"
            elif i == "V":
                ming += "U"

            elif i == "w":
                ming += "v"
            elif i == "W":
                ming += "V"

            elif i == "x":
                ming += "w"
            elif i == "X":
                ming += "W"

            elif i == "y":
                ming += "x"
            elif i == "Y":
                ming += "X"

            elif i == "z":
                ming += "y"
            elif i == "Z":
                ming += "Y"

            else:
                ming += i
        mi_old_list = list(ming)
        ming_str = ming
        ming = ""
    return ming_str

2.文本替换式加解密.py

这个Python程序可以引导你加/解密

运行效果
运行效果

代码来喽!

代码语言:javascript
复制
# 依赖替换式密码
# 文件名:文本替换式加解密.py

import 替换式密码

while True:
    print("欢迎使用文本加解密APP!")
    print("(1)加密 (2)解密  输入其他内容退出")
    m = input("请输入:")
    if m == "1":
        ming = input("请输入明文:")
        while True:
            try:
                yi = int(input("请输入移位值:"))
            except ValueError:
                print("请输入数字!")
            else:
                break
        print("密文为:%s\\n" % (替换式密码.jiami(ming, yi)))

    elif m == "2":
        mi = input("请输入密文:")
        while True:
            try:
                yi = int(input("请输入移位值:"))
            except ValueError:
                print("请输入数字!")
            else:
                break
        print("明文为:%s\\n" % (替换式密码.jiemi(mi, yi)))

    else:
        break
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-06-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.替换式密码.py
  • 2.文本替换式加解密.py
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档