题解 | #字符串加解密#

字符串加解密

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专栏练习梳理

全部评论

相关推荐

无情咸鱼王的秋招日记之薛定谔的Offer:好拒信,偷了,希望有机会用到
点赞 评论 收藏
分享
头像
09-29 16:18
门头沟学院 Java
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务