Python凯撒密码

设置变量储存字母字符串

text = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz’

循环设置

while True:
# 输入需要选择的模式
way = input(‘你想要转码还是解码或是暴力解码呢?:\n’)
if way ==‘转码’:
raw = input(‘请输入你的原始信息:\n’)
num = input(‘请输入你的凯撒密码(1-52):\n’)
# 分别获取原始信息下标
for i in raw:
# 设置变量n储存i取值下标
n = text.find(i)
# 如果出现返回值为-1,则为特殊符号,直接打印
if n == -1:
print(i, end=’’)
else:
# 设置新变量储存转码后各子串的新下标
new_num = text.find(i)+int(num)
# 当新下标不超过52时
if new_num < 52:
# 直接打印新子串
for j in [new_num]:
print(text[j], end=’’)
else:
# 超过52时需要减去52再打印出新子串
for j in [new_num-52]:
print(text[j], end=’’)
print()
# 当用户输入内容为解码时
elif way ==‘解码’:
raw2 = input(‘请输入你的解码信息:\n’)
num2 = input(‘请输入你的凯撒密码(1-52):\n’)
# 获取需解码信息下标信息
for i in raw2:
# 设置变量储存解码信息下标数
m = text.find(i)
# 当返回值为-1时
if m == -1:
# 为未储存符号,直接打印i
print(i, end=’’)
else:
# 设置变量储存原始信息下标数
new_num2 = text.find(i)-int(num2)
# 当下标数小于0时
if new_num2 < 0:
# 加52打印字符串
for j in [new_num2+52]:
print(text[j], end=’’)
else:
# 否则直接打印字符串
for j in [new_num2]:
print(text[j], end=’’)
print()
else:
raw3 = input(‘请输入需要暴力解码的信息:\n’)
# 设置密码循环次数,取值1-51
for num3 in range(1, 52):
# 获取需解码信息下标信息
for i in raw3:
# 设置变量储存解码信息下标数
q = text.find(i)
if q == -1:
# 为未储存符号,直接打印i
print(i, end=’’)
else:
# 设置变量储存原始信息下标数
new_num3 = text.find(i) - int(num3)
# 当下标数小于0时
if new_num3 < 0:
# 加52打印字符串
for j in [new_num3 + 52]:
print(text[j], end=’’)
else:
# 否则直接打印字符串
for j in [new_num3]:
print(text[j], end=’’)
# 密码每次取值之后回车继续
print()
print()

Python凯撒密码相关推荐

  1. python凯撒密码实现_密码:凯撒密码及其Python实现

    python凯撒密码实现 Before we start let's some basic terminology... 在开始之前,让我们先介绍一些基本术语... The art and scien ...

  2. Python凯撒密码解密

    Python 凯撒密码解密 简介 加密 解密 python程序. 其他参考文章 简介 在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密.恺撒变换.变换加密,是一种最简单且最广为人 ...

  3. python凯撒密码详解_Python基础题目集--课堂案例

    这些案例均为在校期间学习<python基础编程>课程的案例,适合初学者练手~ 1.输入分数,返回等级 ''' 分数区间为0~100,等级:A(>=90).B(>=80).C(& ...

  4. python123 凯撒密码,Python:Caesar代码,python,凯撒,密码

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

  5. python凯撒密码加密写入文件_Python用户名密码登录系统(MD5加密并存入文件,三次输入错误将被锁定)及对字符串进行凯撒密码加解密操作...

    #-*- coding: gb2312 -*-#用户名密码登录系统(MD5加密并存入文件)及对字符串进行凯撒密码加解密操作#作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/k ...

  6. python凯撒密码e_凯撒密码python实现

    写在前面的话 凯撒密码原理比较简单. 原理 在密码学中,恺撒密码(英语:Caesar cipher),或称恺撒加密.恺撒变换.变换加密,是一种最简单且最广为人知的加密技术.它是一种替换加密的技术,明文 ...

  7. python 凯撒密码加密和暴力破解

    def decrypt(message):#凯撒密码破解SYMBOLS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'#循环遍历所有可能的KEYfor key in range(len(SY ...

  8. Python|凯撒密码

    凯撒密码是古罗马凯撒大帝用来对军事情报进行加密的算法,它采用了替换方法对信息的每一个英文字符循环替换为字母表序列中该字符后面的第三个字符. 原文:A B C D E F G H I J K L M N ...

  9. python凯撒密码详解_四十八、Python用smtp发邮件详解(163和QQ邮箱)

    Python发邮件详解 一.利用163的smtp发送邮件 import smtplibfrom email.mime.text import MIMETextfrom email.header imp ...

最新文章

  1. 什么是体系化?为什么要体系化架构
  2. Java全角、半角字符的关系以及转换
  3. Android命令行工具logcat详细用法!
  4. Redis在Windows+linux平台下的安装配置(转)
  5. 学成在线--22.课程营销
  6. 机器学习之线性回归的改进-岭回归
  7. mdk系列 Adsl 成功上网指南(非USB ADSL)
  8. delete 和 delete []
  9. win7上Android环境搭建以及调试
  10. PID反馈控制-笔记
  11. svn和git 常用的命令
  12. 2022-07-17 第四小组 孙翰章 职业规划
  13. C语言坐标旋转,c语言矩阵的顺、逆时针旋转
  14. jmeter- 循环控制器计数器 实现批量添加操作
  15. c语言峰值保持算法,led频谱显示带峰值保持
  16. oracle 所有句型,[转载]7分写作必备句型 3
  17. 【css】浮动和定位对元素的宽度-外边距或其他元素的影响
  18. 超详细的Sentinel入门
  19. 文件的拓展名(后缀名)怎么快速修改
  20. DPLink: User Identity Linkage via Deep Neural Network From Heterogeneous Mobility Data 阅读笔记

热门文章

  1. linux如何移植goaheadweb服务器,GoAhead移植配置
  2. mysql 制定索引_mysql的最佳索引攻略
  3. 谷歌日历类似_如何处理多个Google日历
  4. ROS小乌龟turtlesim详解
  5. Storm工作原理集群环境搭建
  6. css怎样让导航词语间隔,css - 导航分隔符
  7. Android Picasso 无法加载图片
  8. linux 配置trunk网络
  9. 毕设 CC2530+esp8266使用AT指令上传与获取onenet服务器的数据
  10. setTimeout()和clearTimeout用法详解