Python基础编程入门实例:恺撒密码

这篇具有很好参考价值的文章主要介绍了Python基础编程入门实例:恺撒密码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Python基础编程入门实例:恺撒密码

一、什么是恺撒密码

  • 恺撒撒密码是古罗马恺撒大帝用来对军事情报进行加密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列该字符后面第三个字符:

原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

凯撒密码python编程,# Python基础编程,Python,python,开发语言,Python程序基础,Python入门小实例,pycharm

  • 原文字符P,其密文字符C满足如下条件:

C = ( P + 3 ) mod 26

  • 解密方法反之,满足:

P = ( C – 3 ) mod 26

二、程序运行环境

程序运行环境是:pycharm2021
凯撒密码python编程,# Python基础编程,Python,python,开发语言,Python程序基础,Python入门小实例,pycharm

三、恺撒密码:加密

  • 恺撒密码的加密算法程序首先接收用户输入的文本
  • 然后对字母a-z和字母A-Z按照密码算法进行转换

3.1、恺撒密码加密实例程序

凯撒密码python编程,# Python基础编程,Python,python,开发语言,Python程序基础,Python入门小实例,pycharm

# 恺撒密码加密
def Caesar_PW_Encryption():
    inputText = input("请输入明文文本: ")
    for index in inputText:
        if "a" <= index <= "z":
            print(chr(ord("a") + (ord(index) - ord("a") + 3) % 26), end='')
        elif "A" <= index <= "Z":
            print(chr(ord("A") + (ord(index) - ord("A") + 3) % 26), end='')
        else:
            print(index, end='')
  • 在主函数中调用这个Caesar_PW_Encryption恺撒密码加密函数,如下所示
if __name__ == '__main__':
    # 恺撒密码加密
    Caesar_PW_Encryption()

3.2、恺撒密码加密实例程序运行结果

凯撒密码python编程,# Python基础编程,Python,python,开发语言,Python程序基础,Python入门小实例,pycharm

四、恺撒密码:解密

  • 恺撒密码的解密算法程序首先接收用户输入的加密文本
  • 然后对字母a-z和字 母A-Z按照密 码算法进行反向转换

4.1、恺撒密码解密实例程序

凯撒密码python编程,# Python基础编程,Python,python,开发语言,Python程序基础,Python入门小实例,pycharm

# 恺撒密码解密
def Ceasar_PW_Decryption():
    inputText = input("请输入加密后文本: ")
    for index in inputText:
        if "a" <= index <= "z":
            print(chr(ord("a") + (ord(index) - ord("a") - 3) % 26), end='')
        elif "A" <= index <= "Z":
            print(chr(ord("A") + (ord(index) - ord("A") - 3) % 26), end='')
        else:
            print(index, end='')

  • 在主函数中调用这个Caesar_PW_Encryption恺撒密码加密函数,如下所示
if __name__ == '__main__':
    # 恺撒密码加密
    Caesar_PW_Encryption()

    # 恺撒密码解密
    Ceasar_PW_Decryption()

4.2、恺撒密码解密实例程序运行结果

凯撒密码python编程,# Python基础编程,Python,python,开发语言,Python程序基础,Python入门小实例,pycharm

五、完整程序

# 恺撒密码加密
def Caesar_PW_Encryption():
    inputText = input("请输入明文文本: ")
    for index in inputText:
        if "a" <= index <= "z":
            print(chr(ord("a") + (ord(index) - ord("a") + 3) % 26), end='')
        elif "A" <= index <= "Z":
            print(chr(ord("A") + (ord(index) - ord("A") + 3) % 26), end='')
        else:
            print(index, end='')

# 恺撒密码解密
def Ceasar_PW_Decryption():
    inputText = input("请输入加密后文本: ")
    for index in inputText:
        if "a" <= index <= "z":
            print(chr(ord("a") + (ord(index) - ord("a") - 3) % 26), end='')
        elif "A" <= index <= "Z":
            print(chr(ord("A") + (ord(index) - ord("A") - 3) % 26), end='')
        else:
            print(index, end='')

if __name__ == '__main__':
    # 恺撒密码加密
    Caesar_PW_Encryption()

    # 恺撒密码解密
    Ceasar_PW_Decryption()

    

六、总结

本文主要讲解了恺撒密码:采用了替换方法对信息中的每一个英文字符循环替换为字母表序列该字符后面第三个字符。并通过一个实例程序来进一步加强对恺撒密码的理解与运用。文章来源地址https://www.toymoban.com/news/detail-724193.html

到了这里,关于Python基础编程入门实例:恺撒密码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 凯撒密码_c++_java_python(加密及解密)

    公元前100多年凯撒发明的一种密码,简单来说是平移密码,也就是将字母位置向后移动一定位数。 如原文是ABCXYZ,密钥为3,加密后就是DEFABC。 以密钥的数字向后平移了三位,如果密钥是5就是平移五位。 解密就是把加密的文字进行还原。 我们通过对题目的分析可以发现,加

    2024年02月06日
    浏览(36)
  • [密码学入门]凯撒密码(Caesar Cipher)

    非常推荐《密码编码学与网络安全--原理与实践(第八版)》这本书。 密码体质五元组:P,C,K,E,D P,plaintext,明文空间 C,ciphertext,密文空间 K,key,密钥空间 E,encrypt,加密算法 D,decrypt,解密算法 单表代换 单表:英文26字母的顺序 代换:替换为别的字母并保证解密的唯一

    2024年02月09日
    浏览(25)
  • 014集:python访问互联网:网络爬虫实例—python基础入门实例

    以pycharm环境为例: 首先需要安装各种库(urllib:requests:Openssl-python等) python爬虫中需要用到的库,大致可分为:1、实现 HTTP 请求操作的请求库;2、从网页中提取信息的解析库;3、Python与数据库交互的存储库;4、爬虫框架;5、Web框架库。 一、请求库 实现 HTTP 请求操作 1、

    2024年01月16日
    浏览(36)
  • 编程小白的自学笔记十(python爬虫入门二+实例代码详解)

    编程小白的自学笔记九(python爬虫入门+代码详解) 编程小白的自学笔记八(python中的多线程)   编程小白的自学笔记七(python中类的继承)  编程小白的自学笔记六(python中类的静态方法和动态方法) 编程小白的自学笔记五(Python类的方法)  目录 系列文章目录 前言 一

    2024年02月16日
    浏览(30)
  • 006集 正则表达式 re 应用实例—python基础入门实例

    正则表达式指预先定义好一个 “ 字符串模板 ” ,通过这个 “ 字符串模 板” 可以匹配、查找和替换那些匹配 “ 字符串模板 ” 的字符串。 Python的中 re 模块,主要是用来处理正则表达式,还可以利用 re 模块通过正则表达式来进行网页数据的爬取和存储。 正则表达式的英文

    2024年02月01日
    浏览(48)
  • 编程小白的自学笔记十二(python爬虫入门四Selenium的使用实例二)

    编程小白的自学笔记十一(python爬虫入门三Selenium的使用+实例详解) 编程小白的自学笔记十(python爬虫入门二+实例代码详解)  编程小白的自学笔记九(python爬虫入门+代码详解)  目录 系列文章目录 前言 一、使用Selenium打开子页面 二、使用Selenium实现网页滚动 三、使用

    2024年02月15日
    浏览(25)
  • 编程小白的自学笔记十一(python爬虫入门三Selenium的使用+实例详解)

    编程小白的自学笔记十(python爬虫入门二+实例代码详解 编程小白的自学笔记九(python爬虫入门+代码详解)  编程小白的自学笔记八(python中的多线程)  编程小白的自学笔记七(python中类的继承)  目录 系列文章目录 文章目录 前言 一、Selenium是什么 二、安装Selenium  三、

    2024年02月16日
    浏览(37)
  • 017集:strip( )函数详解—python基础入门实例

    strip()函数是python中内置函数的一部分。 该函数将从原始字符串的开头和结尾删除给定的字符。 默认情况下,函数strip()将删除字符串开头和结尾的空格,并返回前后不带空格的相同字符串。 语法 1 string.strip([characters]) 参数 characters :(可选)将从原始字符串的开头或结尾删

    2024年01月18日
    浏览(27)
  • Python基础入门编程代码练习(二)

    循环条件:i100 循环操作  实现代码如下: 运行结果:   计算 100 以内的奇数之和,并设置断点调试程序,追踪 3 个表达式的执行顺序及循环变量的变化  实现代码如下: 运行结果:   商场对顾客的年龄层次进行调查 计算各年龄层次的顾客比例  实现代码如下: 运行结果:

    2024年02月03日
    浏览(27)
  • 【零基础入门学习Python---Python网络编程之django快速入门实践】

    🚀 Python 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,CSDN-Java领域优质创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验

    2024年02月16日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包