python之信息加密题目详解

yipeiwu_com6年前Python基础

1.贴题

题目来自PythonTip

信息加密

给你个小写英文字符串a和一个非负数b(0<=b<26), 将a中的每个小写字符替换成字母表中比它大b的字母。这里将字母表的z和a相连,如果超过了z就回到了a。

例如a=”cagy”, b=3,

则输出 :fdjb

2.说明

考察点

  1. 英文字母与数字的转换
  2. 如果超过z的处理

3.参考代码

c = "" #定义空字符串c用于存放加密后的字符串
for j in a: #遍历字符串a中的每一个英文小写字母
if ord(j)+b < 124: #判断加密后是否不超过z
c += chr(ord(j)+b) #如果不超过则直接添加
else:
c += chr(ord(j)+b-26) #否则添加回到开头的字母
print(c) #打印加密后的字符串

4.其他写法

1.取余法

print ''.join([chr(ord('a')+(ord(x)+3-ord('a'))%26) for x in a])

2.构造法

def conve(a,b):
low_set='abcdefghijklmnopqrstuvwxyz'*2
res=''
for x in a:
res+=low_set[low_set.index(x)+b]
return res
a=conve(a,b)
print a

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

批量获取及验证HTTP代理的Python脚本

HTTP暴力破解、撞库,有一些惯用的技巧,比如: 1. 在扫号人人网时,我遇到单个账号错误两次,强制要求输入验证码,而对方并未实施IP策略。 我采用维护10万(用户名,密码) 队列的方式...

Python中的面向对象编程详解(下)

继承 继承描述了基类的属性如何“遗传”给派生类。一个子类可以继承它的基类的任何属性,不管是数据属性还是方法。 创建子类的语法看起来与普通(新式)类没有区别,一个类名,后跟一个或多个需要...

python中从str中提取元素到list以及将list转换为str的方法

在python中时常需要从字符串类型str中提取元素到一个数组list中,例如str是一个逗号隔开的姓名名单,需要将每个名字提取到一个元素为str型的list中。 如姓名列表str =...

Python中new方法的详解

new_ 方法是什么? __new__方法其实就是创建对象的方法 new()方法是在类准备将自身实例化时调用。 一个类可以有多个位置参数和多个命名参数,而在实例化开始之后,在调用 ini...

python+numpy按行求一个二维数组的最大值方法

问题描述: 给定一个二维数组,求每一行的最大值 返回一个列向量 如: 给定数组【1,2,3;4,5,3】 返回[3;5] import numpy as np x = np.arr...