python实现移位加密和解密

 更新时间:2019年03月22日 08:31:17   作者:吉米多的围棋  
这篇文章主要为大家详细介绍了python实现移位加密和解密,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了python实现移位加密和解密的具体代码,供大家参考,具体内容如下

代码很简单,就不多做解释啦。主要思路是将字符串转为Ascii码,将大小写字母分别移位密钥表示的位数,然后转回字符串。需要注意的是,当秘钥大于26的时候,我使用循环将其不断减去26,直到密钥等效小于26为止。

def encrypt():
  temp = raw_input("Please input your sentence: ")
  key = int(raw_input("Please input your key: "))
  listA = map(ord,temp)
  lens = len(listA)
  for i in range(lens):
    a = listA[i]
    if 65 <= a <= 90:
      a += key
      while a > 90:
        a -= 26
    elif 97 <= a <= 122:
      a += key
      while a > 122:
        a -= 26
    listA[i] = a
  listA = map(chr,listA)
  listA = ''.join(listA)
  print listA


def unencrypt():
  temp = raw_input("Please input your sentence: ")
  key = int(raw_input("Please input your key: "))
  listA = map(ord, temp)
  lens = len(listA)

  for i in range(lens):
    a = listA[i]
    if 65 <= a <= 90:
      a -= key
      while a < 65:
        a += 26
    elif 97 <= a <= 122:
      a -= key
      while a < 97:
        a += 26
    listA[i] = a
  listA = map(chr, listA)
  listA = ''.join(listA)
  print listA


a = int(raw_input("input 0 to encrypt and 1 to unencrypt"))

if a == 0:
  encrypt()
elif a == 1:
  unencrypt()

效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • python自动化办公操作excel的示例详解

    python自动化办公操作excel的示例详解

    这篇文章主要为大家详细介绍了如何利用python来实现自动化办公操作excel文件进行各种样式展示,并自动发送文件给"老板"的邮箱,希望对大家有所帮助
    2024-03-03
  • Python线程下使用锁的技巧分享

    Python线程下使用锁的技巧分享

    本篇文章给大家分享了Python线程下使用锁需要注意的地方,有兴趣的朋友们可以学习参考下。
    2018-09-09
  • 带你用Python实现Saga 分布式事务的方法

    带你用Python实现Saga 分布式事务的方法

    在这篇文章里,我们介绍了 SAGA 的理论知识,也通过一个例子,完整给出了编写一个 SAGA 事务的过程,涵盖了正常成功完成,异常情况,以及成功回滚的情况,需要的朋友参考下吧
    2021-09-09
  • python返回数组索引的方法实现

    python返回数组索引的方法实现

    本文介绍了三种在Python中返回数组索引的方法,主要包括index()方法,enumerate()方法及使用numpy库的argwhere()函数,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • python selenium 对浏览器标签页进行关闭和切换的方法

    python selenium 对浏览器标签页进行关闭和切换的方法

    今天小编就为大家分享一篇python selenium 对浏览器标签页进行关闭和切换的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • 解决python xlrd无法读取excel文件的问题

    解决python xlrd无法读取excel文件的问题

    今天小编就为大家分享一篇解决python xlrd无法读取excel文件的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python UnicodedecodeError编码问题解决方法汇总

    Python UnicodedecodeError编码问题解决方法汇总

    本文主要介绍了Python UnicodedecodeError编码问题解决方法汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Python实现弹球小游戏的示例代码

    Python实现弹球小游戏的示例代码

    这篇文章主要为大家详细介绍了Python如何实现简单的弹球小游戏,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2022-11-11
  • Pandas时间序列重采样(resample)方法中closed、label的作用详解

    Pandas时间序列重采样(resample)方法中closed、label的作用详解

    这篇文章主要介绍了Pandas时间序列重采样(resample)方法中closed、label的作用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Python利用函数式编程实现优化代码

    Python利用函数式编程实现优化代码

    函数式编程(Functional Programming)是一种编程范式,它将计算视为函数的求值,并且避免使用可变状态和循环,在Python中还可以利用它的简洁和高效来解决实际问题,下面我们就来学习一下它的具体用法吧
    2023-11-11

最新评论