山之仙智升 2021-10-12 22:02 采纳率: 88.9%
浏览 57
已结题

这种python程序要怎么写呀

用户在一行中输入一个包括大小写字母和数字的字符串,编程将其中的小写字母用该字母后的第4个字母替代,其他字符原样输出。输入至少包含一个字符串

  • 写回答

2条回答 默认 最新

  • Kappuccinno 2021-10-13 11:33
    关注
    
    s=input('请输入字符串:')
    z_chr=ord('z')#将z的unicode编码赋给z_chr,a-z的unicode编码为97-122,是连续的
    a_chr=z_chr-25
    for length in range(len(s)):#遍历每个字符索引
        each=s[length]#取出索引对应的单个字符赋给each
        each_chr=ord(each)#检验each的unicode编码
        if 0<=each_chr-a_chr<=25:#代表字母为小写
            dist=z_chr-each_chr
            if dist<=3:#如果离z差的不到4,那么就要从a开始数
                replace_str=chr(a_chr+3-dist)
            else:#如果不是,则直接unicode编码加4用chr获得相应的替换字母
                replace_str=chr(each_chr+4)
            s=s[:length]+replace_str+s[length+1:]#在length这个位子上进行替换      
    print(s)#最终替换结果
    

    检查一下

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月21日
  • 已采纳回答 10月13日
  • 创建了问题 10月12日