题解 | #字符串加密#

字符串加密

https://www.nowcoder.com/practice/e4af1fe682b54459b2a211df91a91cf3

key=input().upper()#输入key变大写
info=list(input())
a=[]#大写字母表
b=[]#简化后key
r=[]#记录换大小写的位置
dic={}
for i in range(65,91):#创建大写字母表
    a.append(chr(i))
for j in range(len(info)):#把明文变成大写并记录改变的位置
    if info[j].islower():
        r.append(j)
        info[j]=info[j].upper()
for k in key:#去掉key的重复字母
    if not k in b:
        b.append(k)
for n in range(26):#给key补上字母表
    if a[n] not in b:
        b.append(a[n])
for each in range(26):#创建字典
    dic[a[each]]=b[each]

for l in range(len(info)):#映射字典并改回原来的大小写
    info[l]=dic[info[l]]
    if l in r:
        info[l]=info[l].lower()
print(''.join(info))

全部评论

相关推荐

03-12 09:57
软件测试
程序员小白条:1)确定测试,测开的方向,技术栈不能写这么少 2)课程凑数的,不是99,100分没必要写 3)实习经历这块要有突出的不是劳动性质的亮点,自己设计的什么方案,什么自动化?什么提效工具?不是一些边角料,人云亦云的东西,没吸引力 4) 校园经历纯没用 5)尽量少写减分项
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务