长白山开发建设集团网站,上饶专业的企业网站建设公司,网页设计和网页美工,网络销售平台有哪些软件实例6#xff1a;数据加密
数据加密是保存数据的一种方法#xff0c;它通过加密算法和密钥将数据从明文转换为密文。
假设当前开发的程序中需要对用户的密码进行加密处理#xff0c;已知用户的密码均为6位数字#xff0c;其加密规则如下#xff1a;
获取每个数字的ASCI…实例6数据加密
数据加密是保存数据的一种方法它通过加密算法和密钥将数据从明文转换为密文。
假设当前开发的程序中需要对用户的密码进行加密处理已知用户的密码均为6位数字其加密规则如下
获取每个数字的ASCII值将所有数字的ASCII值进行累加求和将每个数字对应的ASCII值按照从前往后的顺序进行拼接并将拼接后的结果进行反转将反转的结果与前面累加的结果相加所得的结果即为加密后的密码。
本实例要求编写程序按照上述加密规则讲用户输入的密码进行加密并输出加密后的密码。
实例目标
通过完成本实例读者应掌握以下知识技能
熟练使用for循环熟练使用if-else语句
实例分析
根据加密规则对密码进行加密第1步使用for循环获取密码中每个数字对应的ASCII值第2步将获取的ASCII值进行累加第3步对所有的ASCII值进行拼接操作并对拼接的结果进行反转第4步将反转的结果与ASCII的累加值进行相加得出的结果即为加密后的数据。
代码实现
raw_data input(请输入密码)
num_asc 0 # ASCII累加值
str_pwd # ASCII拼接值
for i in raw_data: ascii_val ord(i) # 1.获取每个元素的ASCII值 num_asc ascii_val num_asc # 2.对遍历的ASCII值进行累加操作 str_pwd str(ascii_val) # 3.拼接操作 reversal_num str_pwd[::-1] # 4.将拼接的ASCII值倒序排列 encryption_num int(reversal_num) num_asc
print(f加密后的密码为{encryption_num})
首先使用input()函数接收用户的输入的密码之后设定变量num_asc与变量str_pwd分别来表示数字ASCII累加值与数字ASCII拼接值然后在for循环中遍历用户输入的密码使用ord()函数获取每个数字元素的ASCII值并赋值给变量ascii_val累加所有的ASCII值并赋值给变量num_asc对每个数字的ASCII值对进行拼接操作并赋值给变量str_pwd通过切片方式将拼接后的结果进行倒序排列最后将变量num_asc和变量reversal_num进行累加并赋值给变量encryption_num。
代码测试
运行代码控制台输出结果如下
请输入密码123456
加密后的密码为453525150903