题解 | #字符串加密#

字符串加密

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

while True:
    try:
        a1 = list(input())
        a2 = input()
        b = ''
        for i in a1: #去重
            if i not in b:
                b = b + i
        b1 = [] #存大写
        b2 = [] #存小写
        for i in b:
            if i.isupper():
                b1.append(i)
            else:
                b2.append(i)
        tmp1 = ord('A')
        tmp2 = ord('a')
        alpha1 = [] #存剩余大写
        alpha2 = [] #存剩余小写
        for i in range(tmp1, tmp1+26):
            if chr(i) not in b1:
                alpha1.append(chr(i))
        for i in range(tmp2, tmp2+26):
            if chr(i) not in b2:
                alpha2.append(chr(i))
        alpha1_1 = list(b1)+alpha1 #合并处理好的大写字母表
        alpha2_1 = list(b2)+alpha2 #合并处理好的小写字母表
        alpha1_dict = {} #用字典将正常字母表和处理过的字母表关联(大写)
        alpha2_dict = {} #用字典将正常字母表和处理过的字母表关联(小写)
        for n,i in enumerate(range(tmp1, tmp1+26)):
            alpha1_dict[chr(i)] = alpha1_1[n]
        for n,i in enumerate(range(tmp2, tmp2+26)):
            alpha2_dict[chr(i)] = alpha2_1[n]
        result_final = '' #存最后翻译结果
        for i in a2:
            if i.isupper():
                result_final = result_final + alpha1_dict[i]
            else:
                result_final = result_final + alpha2_dict[i]
        print(result_final)
    except:
        break

全部评论

相关推荐

08-05 18:14
门头沟学院 Java
小花的沉默:是学历厂没错啊,学历太高了不要
投递小鹏汽车等公司10个岗位
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 17:35
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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