题解 | #字符串加解密#

字符串加解密

https://www.nowcoder.com/practice/2aa32b378a024755a3f251e75cbf233a

python考点:还挺多啊
str.isalpha()
chr() 转换能能看懂得十进制
ord() 转换成底层用来处理下一个字符,加1就相当于进入下一个字符得底层逻辑
str.islower()
str.isupper()
str.upper()
str.lower()
str.isdigit()

踩坑的地方就是:
解密的时候,我直接复制的加密然后改代码!!!然后我就裂了,练习模式还好,有debug。考试都没错误的实例,所以还是要一个一个的确认每一个变量是ok的


# 实现思路:遍历,按照规则实现代码即可

s1 = input()
s2 = input()

# 加密
s11 = ""
for i in s1:
    # 处理字母
    if i.isalpha():
        if i == "z":
            s11 += "A"
        elif i == "Z":
            s11 += "a"
        else:
            ch = chr(ord(i) + 1)
            if i.islower():
                s11 += ch.upper()
            else:
                s11 += ch.lower()
    # 处理数字
    if i.isdigit():
        if i == "9":
            s11 += "0"
        else:
            s11 += str(int(i) + 1)
    # 其他字符不做处理
print(s11)

# 解密
s12 = ""
for i in s2:
    # 处理字母
    if i.isalpha():
        if i == "a":
            s12 += "Z"
        elif i == "A":
            s12 += "z"
        else:
            ch = chr(ord(i) - 1)
            if i.islower():
                s12 += ch.upper()
            else:
                s12 += ch.lower()
    # 处理数字
    if i.isdigit():
        if i == "0":
            s12 += "9"
        else:
            s12 += str(int(i) - 1)
    # 其他字符不做处理
print(s12)




OD专栏练习梳理 文章被收录于专栏

OD专栏练习梳理

全部评论

相关推荐

03-19 18:27
已编辑
门头沟学院 C++
26学院本太难了,很多公司机筛就给我刷了。机会都难拿到如果是简历存在问题也欢迎拷打————————————————————分割线——————————————————————2026.3.4更新:发完贴之后,时不时投递又收到了不少的笔试/面试邀请。主要是之前投递简历出去之后基本上都是沉默状态,年后好转了不少timeline:2026.01.21 文远知行笔试,半年多没刷算法题 ->挂 (后续HR说春招可以重新安排笔试)2026.2.4     小鹏汇天 技术一面,第二周收到结果 ->挂2026.2.12   大众Cariad代招 技术二面 ->Offer2026.2.28   多益网络技术面试,由于风评太差,一直在犹豫要不要接面试 ->推迟-----------分割线-----------2026.3 月前的某一天,临时去电网报名了二批计算机岗位的笔试2026.3.6 从上家公司实习离职,氛围最好的一家公司,leader 说可以帮忙转正,但是流程太长,而且我们部门据说只有一个 hc,更想要研究生,我很有可能是会被签外包公司在这里干活,就离职了。2026.3.9 入职新公司,大众Cariad 以外部公司的身份进组,项目组签了三年,后续三年应该都可以在这里呆,不知道有没有希望原地跳槽。2026.3.10 电网考试居然说我通过资格审查了,短信约我去参加资格审查,请假一天,买了 12 号晚上的机票回成都2026.3.15 参加国家电网三新计算机类的笔试2026.3.17 电网出成绩了,感觉很低。觉得已经🈚️了2026.3.18 收到电网面试通知,通知 3.22-3.25 这个时间去面试,我的岗位只招 1 个人。据说面试只有 2-3 人,不知道能不能成功
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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