Python入门程序 字符串应用(学号判断程序、密码破解程序、身份证的秘密)
Python入门程序 字符串应用(学号判断程序、密码破解程序、身份证的秘密)
没想到学校会在大二同时学习Java的的时候一起学Python语言,在这写一些平时的python编程作业。
就从字符串的应用开始吧,后面可能还会写更多其他的。
1.学号判断程序
任务:学号是学生在学校的唯一身份判别号码,我校学号共12位,它的含义,其中代表系部的情况如下所示:
- 201865110006,6511代表“网络资源系”
- 程序编写要求:
- 要求从键盘输入该学生的学号,再经判断后输出该生是否为“网络资源系”的学生。
- 需使用字符串的切片操作。
- 输出显示 如下图所示:
下面是这个程序的代码:
#学号判断程序str_stuNo = input("请输入您的学号:")
#判断学号是否是12位,不对则重新输入
while(len(str_stuNo)!=12):str_stuNo = input("您输入的学号位数不对,请重新输入:")#系部判断
if(str_stuNo[4:8]=="6511"):print("学号为"+str_stuNo+"的学生是网络资源系的学生")
运行的结果是:
- 这个字符串应用的程序首先需要输入一段学号,然后进行利用while循环判断位数是否为12,不是的话需要重新输入。
- 如果输入的是12位,接下来需要进行切片,取出要求中的字符串进行比较。
另外除了利用len()函数计算字符串位数之外还可以利用将字符串每个字符转换为ACSLL码进行判断,代码如下:
num=0
for i in id:if ord(i)>=48 and ord(i)<=57:num=num+1
2.密码破解程序
任务:现有一个字符串,该字符串为加密后的一个密码,具体情况如下:
- 该字符串是: "ixo678", 其中o是字母
- 现猜测其加密码规则是:在其ASCII码的值上再加了5
- 现要求将该字符串进行解密,得到真正的密码
- 解密前需了解ord 函数和chr函数
下面是这个程序的代码:
#密码破解程序
miwen = "ixo678"#密文字符串
jiemi=""#解密#在这之前你需要知道:
#ord函数将字符串转换为ASCLL码值
#chr将ASCLL码值转换为字符
for i in range(len(miwen)):jiemi+=chr(ord(miwen[i])-5)print("解密后的密码是:",jiemi)
运行的结果是:
- 这个字符串应用程序告诉一段字符串,需要在其ASCLL码值减5后有输出字符串,你需要明白
- ord函数将字符串转换为ASCLL码值
- chr将ASCLL码值转换为字符
3.身份证的秘密
任务:我国身份证号是公民的唯一 识别号码,包含相应的身份信息,现要求用户从键盘输入18位的身份证号,经程序判断后输出相应的身份信息。
- 身份证号码为18位,规则如下图所示::
- 程序输出显示如下图所示:
下面是这个程序的代码:
str_id=input( "请输入身份证号码: ") #举例: 430120199502121487#身份证位数判断
while(len(str_id)!=18):str_id = input("您输入的身份证号位数不对,请重新输入: ")#省份识别
if(str_id[0:2]=="43"):province ="湖南省"#出生日期
birthday=str_id[6:14]#性别识别
if(int(str_id[-2])%2==0):#偶数为女性sex="女"
else:sex="男"#身份证保密显示,replace函数
showid=str_id.replace(str_id[-8:-4],"****")print("-"*20)
print("该人的身份信息如下:")
print( "所在省份:", province)
print("出生日期:", birthday)
print("性别:",sex)
print("-"*20)
print("身份证保密显示如下:",showid)
运行的结果是:
- 这个字符串应用的程序首先需要输入一段身份证号码,然后进行利用while循环判断位数是否为18,不是的话需要重新输入。
- 如果输入的是18位,接下来需要进行切片,取出要求中的字符串进行比较。
- 首先取请两位判断是不是”43“,是的话就是”湖南省“。
- 然后取出出生日期的字段。
- 字符串的下标最后一位永远是-1,性别是倒数第二位,因此可以用-2来取。取出的是字符串类型,需要强制转换为整数类型(int),然后进行奇数偶数判断。
- 要保留身份证,则需要将部分自动进行覆盖,python字符串中可以用replace()函数进行覆盖。
- 最后按要求输出。
上面三个python小程序是对字符串内容的练习。
Python入门程序 字符串应用(学号判断程序、密码破解程序、身份证的秘密)相关推荐
- 【李刚-21天通关Python】第一章:Python入门与字符串
[李刚-21天通关Python]第一章:Python入门与字符串 第一章:Python入门与字符串 数据类型 字符串 运算符 实操:简易计算器 & 进制转换 章节分篇链接: [李刚-21天通关 ...
- Python 入门之字符串处理
第1关:字符串的拼接:名字的组成 任务描述 本关任务是将两个不同的字符串,拼接形成一个字符串,并将新字符串输出来.字符串或串(String)是由数字.字母.下划线组成的一串字符.在 Python 中, ...
- python入门之字符串_03
# 字符串 -------笔记------ # 1.字符串的特性:不可修改,有序的 # 2.字符串的定义: # 双引号和单引号都可以定义 # 三双引号和三单引号都可以定义 # 字符串里面有空格也算是字 ...
- 【Python黑帽子】——简易的ZIP文件密码破解器
作者名:Demo不是emo 主页面链接:主页传送门 创作初心:一切为了她 座右铭:不要让时代的悲哀成为你的悲哀 专研方向:网络安全,数据结构 每日emo:突然感觉也没什么好emo的了,仿佛时间已经将 ...
- python入门之字符串
目录 一.字符串的定义 二.字符串的常用操作 三.字符串的切片 一.字符串的定义 字符串就是一串字符,是编程语言中表示文本的数据类型 在python中可以使用一对双引号"或者一对单引号'定义 ...
- python入门之字符串处理_python基础教程之python字符串处理方法|python基础教程|python入门|python教程...
https://www.xin3721.com/eschool/pythonxin3721/ 字符和字符串可以用来相加来组合成一个字符串输出: 字符或字符串复制输出. 二.Extract &S ...
- python入门之字符串处理_Python基础之字符串操作,格式化。
Python字符串现在感觉在日常的使用中不多,但仔细看了书以后一些小技巧还是很方便的,我这里简单的记录下. 插入一个超搞逼格的: .format_map(其实这个是字符串的方法.....) In [8 ...
- python入门——数字+字符串
数字 1.python数字类型转换 只需要将数据类型作为函数名即可 int(x) #将x转换为一个整数 float(x) #将x转换到一个浮点数 complex(x)#将x转换到一个复数,实部为X,虚 ...
- python入门之字符串索引,切片
1.什么是索引 字符串的索引:索引(字符串里面每一个字符都有下标(索引),并且是从0开始) 正序:从头开始数 反序:从尾开始数 字符串怎么取值:根据索引取值 取值公式:字符串名[索引值 字符串索引,表 ...
最新文章
- 获取今天,昨天,本周,上周,本月,上月时间
- .net 4.5部署到docker容器
- 工业以太网交换机与以太网光端机的区别
- 《Python Cookbook 3rd》笔记(2.17):在字符串中处理html和xml
- IDEA创建第一个Spring Boot项目
- matlab 生成连续信号,Matlab的连续信号生成及时频域分析
- golang range循环内部
- numpy实现BN层
- 基于R语言利用QQ群进行数据挖掘案例整理
- 仿网易云手机版代码_网易uu加速器官网下载-网易uu加速器手机版下载
- TensorFlow 高级之一(实现单层神经网络)
- 现代大学英语精读第二版(第四册)学习笔记(原文及全文翻译)——5B - Could You Live with Less(你可以简朴地生活吗)
- 最小二乘法平面方程拟合计算, 点云法向量估算
- 最让IT技术支持人员头痛的10件事
- spring mvc +maven 集成 quartz实现定时任务
- 文件被清理了怎么恢复
- 进一步认识Deepchem的分子特征化: 将化学分子结构作为到随机森林\CNN\RNN\GNN等机器学习模型输入的三种方法
- Linux的wget命令详解
- webpack配置指定文件不打包
- keychain service钥匙串服务