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入门程序 字符串应用(学号判断程序、密码破解程序、身份证的秘密)相关推荐

  1. 【李刚-21天通关Python】第一章:Python入门与字符串

    [李刚-21天通关Python]第一章:Python入门与字符串 第一章:Python入门与字符串 数据类型 字符串 运算符 实操:简易计算器 & 进制转换 章节分篇链接: [李刚-21天通关 ...

  2. Python 入门之字符串处理

    第1关:字符串的拼接:名字的组成 任务描述 本关任务是将两个不同的字符串,拼接形成一个字符串,并将新字符串输出来.字符串或串(String)是由数字.字母.下划线组成的一串字符.在 Python 中, ...

  3. python入门之字符串_03

    # 字符串 -------笔记------ # 1.字符串的特性:不可修改,有序的 # 2.字符串的定义: # 双引号和单引号都可以定义 # 三双引号和三单引号都可以定义 # 字符串里面有空格也算是字 ...

  4. 【Python黑帽子】——简易的ZIP文件密码破解器

    作者名:Demo不是emo  主页面链接:主页传送门 创作初心:一切为了她 座右铭:不要让时代的悲哀成为你的悲哀 专研方向:网络安全,数据结构 每日emo:突然感觉也没什么好emo的了,仿佛时间已经将 ...

  5. python入门之字符串

    目录 一.字符串的定义 二.字符串的常用操作 三.字符串的切片 一.字符串的定义 字符串就是一串字符,是编程语言中表示文本的数据类型 在python中可以使用一对双引号"或者一对单引号'定义 ...

  6. python入门之字符串处理_python基础教程之python字符串处理方法|python基础教程|python入门|python教程...

    https://www.xin3721.com/eschool/pythonxin3721/ 字符和字符串可以用来相加来组合成一个字符串输出: 字符或字符串复制输出. 二.Extract &S ...

  7. python入门之字符串处理_Python基础之字符串操作,格式化。

    Python字符串现在感觉在日常的使用中不多,但仔细看了书以后一些小技巧还是很方便的,我这里简单的记录下. 插入一个超搞逼格的: .format_map(其实这个是字符串的方法.....) In [8 ...

  8. python入门——数字+字符串

    数字 1.python数字类型转换 只需要将数据类型作为函数名即可 int(x) #将x转换为一个整数 float(x) #将x转换到一个浮点数 complex(x)#将x转换到一个复数,实部为X,虚 ...

  9. python入门之字符串索引,切片

    1.什么是索引 字符串的索引:索引(字符串里面每一个字符都有下标(索引),并且是从0开始) 正序:从头开始数 反序:从尾开始数 字符串怎么取值:根据索引取值 取值公式:字符串名[索引值 字符串索引,表 ...

最新文章

  1. 获取今天,昨天,本周,上周,本月,上月时间
  2. .net 4.5部署到docker容器
  3. 工业以太网交换机与以太网光端机的区别
  4. 《Python Cookbook 3rd》笔记(2.17):在字符串中处理html和xml
  5. IDEA创建第一个Spring Boot项目
  6. matlab 生成连续信号,Matlab的连续信号生成及时频域分析
  7. golang range循环内部
  8. numpy实现BN层
  9. 基于R语言利用QQ群进行数据挖掘案例整理
  10. 仿网易云手机版代码_网易uu加速器官网下载-网易uu加速器手机版下载
  11. TensorFlow 高级之一(实现单层神经网络)
  12. 现代大学英语精读第二版(第四册)学习笔记(原文及全文翻译)——5B - Could You Live with Less(你可以简朴地生活吗)
  13. 最小二乘法平面方程拟合计算, 点云法向量估算
  14. 最让IT技术支持人员头痛的10件事
  15. spring mvc +maven 集成 quartz实现定时任务
  16. 文件被清理了怎么恢复
  17. 进一步认识Deepchem的分子特征化: 将化学分子结构作为到随机森林\CNN\RNN\GNN等机器学习模型输入的三种方法
  18. Linux的wget命令详解
  19. webpack配置指定文件不打包
  20. keychain service钥匙串服务

热门文章

  1. 云服务器建站PHP环境搭建教程总结(如何搭建)
  2. Python Anaconda powerShell activate激活环境无效
  3. 即拿即用-Android多线程断点下载
  4. 93年女生400栋楼收租引发巨大争议:真正的“后浪”是什么样子?
  5. 计算机视觉-基于BOW的图像检索
  6. [从头学数学] 第180节 解三角形
  7. 中外医学文献去哪里查找下载
  8. 美国研发高精度气候模型精确预测气候状况
  9. 一道美国计算机奥赛题
  10. 再日阿里云,鸡贼第二弹!以身试法,希望你不要中招了!!!