小邓同学No.1 2023-06-09 00:16 采纳率: 50%
浏览 56
已结题

Python#密码加密

输入由数字和字母组合的密码,并输入加密后的密码。加密规则为:先将数字按照顺序输出,字母按照倒序且大小写转换后输出。例如:输入为15ABC7,输出为157cba。

  • 写回答

2条回答 默认 最新

  • 梦幻精灵_cq 2023-06-09 07:30
    关注

    img

      您这是闹着玩儿的,因为这“加密算法”,好像实现不了解密。😀😀

    思路:分步处理。1、顺序收集数字。2、倒序收集转小写的字母。

    • 代码
    def encrypt(passwords):
        ''' 字符串加密 '''
        cryptograph = '' # 密文初值。
        
        for i in passwords: 
    
            if i.isdigit(): # 提取数字。
            #if i in list('0987654321'):
                cryptograph += i
        
        alpha = [] # 密码文本中的字母初值。
        for i in passwords: #提取字母。
    
            if not i.isdigit():
                alpha.append(i)
    
        alpha_s = '' # 密文字母初值。
        for i in alpha[:]: # 遍历字母列表副本。
            char = alpha.pop()
            
            if char.isupper():
                alpha_s += char.lower() # 小写字母转小写。
            elif char.islower():
                alpha_s += char.upper() # 大写字母转大写。
            else:
                alpha_s += char # 非字母保持原样倒序。
    
        return cryptograph + alpha_s
    
    
    if __name__ == '__main__':
        passwords = input('\n请输入密码:')
        if not passwords: # 不输入默认15ABC7。
            passwords = '15ABC7'
        print('\n原文:', passwords)
        print('\n密文:', encrypt(passwords))
    
    
    • 代码运行效果截屏图片

      img


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

报告相同问题?

问题事件

  • 系统已结题 6月17日
  • 已采纳回答 6月9日
  • 修改了问题 6月9日
  • 创建了问题 6月9日