Python程序设计 字符类型及其操作

1. 提取身份证号性别

通过身份证的第17位也就是倒数第二位的数字可以辨别该身份证所属人的性别,奇数为男性,偶数为女性。 输入身份证号,第17位若是偶数,输出性别女,否则输出性别男

1.通过input()函数接收用户输入的身份证号,将其保存在变量sfzh中。

2.sfzh第17位sfz[16]若是偶数,设置性别xb为女,否则设置性别xb为男

3.输出性别

sfzh=input("输入身份证号")
#代码开始
if int(sfzh[-2]) % 2 == 0:print("性别女")
else:print("性别男")#代码结束

2. 提取身份证号生肖

身份证的第六位到第九位是出生的年份。

,

出生年份除以12的余数,如果余数为0,则相应的属相是猴。 余数为1,则相应的属相是鸡。 出生年份对12的余数与属相的对应关系,如图所示。

,

输入身份证号,根据年份计算其生肖。

1.通过input()函数接收用户输入的身份证号,将其保存在变量sfzh

2.设置年份nf是sfzh第6位到第9位sfz[6:9]

3.设置字符串sxzf=“猴鸡狗猪鼠牛虎兔龙蛇马羊”,出生年份对12的余数是eval(nf)%12,sxzf[eval(nf)%12]]就是属相。

sfzh=input("输入身份证号")
#代码开始
s = sfzh[6:10]
sxzf="猴鸡狗猪鼠牛虎兔龙蛇马羊"
n = int(s) % 12
print("生肖%s" % sxzf[n])#代码结束

3. 打印三角形

编写程序,输入整数,输出加号组成的整数边长的等腰直角三角形

,

方案一:

1.输入行数hs

2.i从0循环到hs-1,每行打印hs-1-i个空格和2i+1个+号

,

hs=eval(input("请输入行数"))
#代码开始
for i in range(hs):print(" "*(hs-1-i) + "+" *(2*i+1))#代码结束

方案二: 

hs=eval(input("请输入行数"))
#代码开始for i in range(0, hs):for j in range(1, hs-i):print(" ",end="")for n in range(hs-i+1,hs+1):print("+",end="")for x in range(hs-i-1,hs):print("+",end="")print()
#代码结束

4. 打印钻石图形

编写程序,输入整数,输出加号组成的整数边长的钻石图形

,

方案一:

输入:行数

处理: i从0循环到行数减一 每次输出行数减一减i个空格和2*i+1个加号 i从行数减二循环到0 每次输出行数减一减i个空格和2*i+1个加号

,

hs=eval(input("请输入行数"))
#代码开始  
for i in range(0, hs):print(" "*(hs-1-i) + "+"*(i*2+1))
for i in range(hs-2, -1, -1):print(" "*(hs-1-i) + "+"*(i*2+1))  #代码结束

 方案二:

hs=eval(input("请输入行数"))
#代码开始    
for i in range(0, hs):for a in range(1,hs-i):print(" ",end="")for b in range(hs-i+1,hs+1):print("+",end="")for c in range(hs-i-1,hs):print("+",end="")print()for j in range(hs,1,-1):for a in range(0, hs-j+1):print(" ",end="")for b in range(0, j-1):print("+",end="")for c in range(0,j-2):print("+",end="")print()#代码结束

5. 身份证合法性检查

输入身份证号,去除空格后,判断其长度是否18位,前17位是否数字。若不符合条件,显示对应提示

,

sfzh=input("输入身份证号")
#代码开始
sfzh = sfzh.strip()
if len(sfzh) == 18:if sfzh[:17].isnumeric():print("")else:print("不是数字")else:print("长度错误")
#代码结束

6. 身份证号校验码

编写一个能判断身份证号校验码是否正确的小程序。

,

身份证的校验码的计算规则: 1.将身份证号码前面的17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7、9、10、5、8、4、2、1、6、3、7、9、10、5、8、4、2 ; 2、将相乘的结果累加; 3、用累加的和除以11,得到余数; 4、余数0到10对应的校验码为1、0、X、9、8、7、6、5、4、3、2。

,

1.输入身份证号sfzh

2.设置xs为17位系数所对应的字符串'79a584216379a5842', 10用'a'表示

3.i从0循环到16,xs[i]对应的数值(若xs[i]为'a'则为10)乘以sfzh[i]对应的数值,累加求和为s

4.设置jym为各位余数对应的校验码的字符串'10X98765432’

5.根据s对11的余数对jym切片,若不等于第18位sfzh,显示校验码错误。 

sfzh=input("输入身份证号")
#代码开始
xs = "79a584216379a5842" 
s = 0
i = 1
if len(sfzh) == 18:for i in range(17):if xs[i] != "a":s += eval(sfzh[i]) * eval(xs[i])else:s += eval(sfzh[i]) * 10jym = "10X98765432"if jym[s%11] != sfzh[17]:print("校验码错误")
#代码结束

7. 统计字符串中的各类字符

 输入字符串,统计其中的大写字母、小写字母、汉字、数字字符和其他字符的个数。

,

输入:字符串 处理: 设置变量sz、xxzm、dxzm、hz、qt为0,分别记录数字、小写、大写、汉字、其他字符的个数 对字符串的每个字符循环,若符合相应的条件则相应的变量加一,均不符合则qt加一。 输出:各变量的值

判断字符是大小写字母与汉字等

,

字符串.isdigit()会判断字符串是否阿拉伯数字字符

字符串.isnumeric()会判断字符串是否是数字字符,包含汉字的数字也会返回真值

该案例中对数字的定义是阿拉伯数字 也可以通过字符的大小判定 例如"Z">=ch>="A"可以判断ch是否大写字母 "z">=ch>="a"可以判断ch是否大写字母

x=input("请输入字符串")
#代码开始
sz = 0
xxzm = 0
dxzm = 0
hz = 0
qt = 0
for i in x:if "A" <= i <= "Z":dxzm += 1elif "a" <= i <= "z":xxzm += 1elif "\u4e00" <= i <= "\u9fff":hz += 1elif "0" <= i <= "9":sz += 1else:qt += 1print("大写字母%s小写字母%s汉字%s数字%s其他%s" % (dxzm, xxzm, hz, sz, qt))#代码结束

8. 凯撒密码加密

编写一个对输入的字符串进行凯撒密码加密的程序

凯撒密码是古罗马凯撒大帝用来对军事情报进行加密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列该字符后面第三个字符,对应关系如下: 原文:abcdefghijklmnopqrstuvwxyz 密文:defghijklmnopqrstuvwxyzabc

每个字符在计算机中可以表示为一个数字,称为编码。 字符串则以编码序列方式存储在计算机中。 目前,计算机采用的重要编码是ASCII编码。 asc码表如图所示

字符a的编码是97,字符b的编码是98,其余字母以此类推 ord(字符)函数可以返回字符的编码 chr(码值)函数可以返回编码对应的字符 例如,chr(97)是'a' ord('d')是100

x = input("输入明文:")
#代码开始
y = ""
for i in x:if "a" <= i <= "z":s = chr((ord(i)-ord("a") + 3) % 26 + ord("a"))else:s = iy += s
print("密文为:%s" % y)#代码结束

9. 选择题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/300532.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第7章 数据安全

思维导图 7.1 引言 数据安全包括安全策略和过程的规划、建立与执行&#xff0c;为数据和信息资产提供正确的身份验证、授权、访问和审计。虽然数据安全的详细情况(如哪些数据需要保护)因行业和国家有所不同&#xff0c;但是数据安全实践的目标是相同的&#xff0c;即根据隐私和…

SQL Sever 2008 安装教程

先从官网下载程序&#xff1a;下载地址 打开上述链接后&#xff0c;点击下载按钮。 就会跳出下面这个界面&#xff0c;如果你的电脑是64位的请选择下图中这两个程序。 下载完成后&#xff0c;在电脑磁盘中找到这两个文件&#xff0c;注意安装的顺序&#xff0c;先安装 SQLEXPR…

pdf操作器(图片转文字、PDF转word、PDF拆分、图片jpg、png互转)

pdf操作器&#xff08;不用联网图片转文字、PDF转word、PDF拆分、图片jpg、png互转&#xff09;介绍目前该软件实现了以下功能 pdf转wordpdf拆分图片&#xff0c;图片导出在桌面的一个文件夹里图片合并为pdf压缩、转换图片格式&#xff08;jpg和png&#xff09;OCR图片转文字&…

uniapp中uni.navigateTo传递变量

效果展示&#xff1a; 核心代码&#xff1a; uniapp中uni.navigateTo传递变量 methods: {changePages(item) {setDatas("maintenanceFunName", JSON.stringify(item)).then((res) > {uni.navigateTo({url: /pages/PMS/maintenance/maintenanceTypes/maintenanceT…

[图像处理] MFC载入图片并绘制ROI矩形

上一篇&#xff1a; [图像处理] MFC载入图片并进行二值化处理和灰度处理及其效果显示 文章目录 前言完整代码重要代码效果 前言 上一篇实现了MFC通过Picture控件载入图片。 这一篇实现ROI功能的第一部分&#xff0c;在Picture控件中&#xff0c;通过鼠标拖拽画出一个矩形。 完…

积木报表Excel数据量大导出慢导不出问题、大量数据导不出问题优化方案和分析解决思路(优化前一万多导出失败,优化后支持百万级跨库表导出)

文章目录 积木报表Excel数据量大导出慢导不出问题、大量数据导不出问题优化方案和分析解决思路&#xff08;优化前一万多导出失败&#xff0c;优化后支持百万级跨库表导出&#xff09;优化结果需求背景和解决方案的思考解决方案流程描述&#xff1a;关键代码引入easy excel新建…

景区云旅游/视频慢直播方案设计与平台搭建

一、行业背景 经文化和旅游部数据中心测算&#xff0c;今年清明节假期3天全国国内旅游出游1.19亿人次&#xff0c;按可比口径较2019年同期增长11.5%&#xff1b;国内游客出游花费539.5亿元&#xff0c;较2019年同期增长12.7%。踏青赏花和户外徒步成为假期的热门出游主题。随着…

Python学习从0开始——007输入与输出

Python学习从0开始——007输入与输出 一、简单输出二、复杂输出2.1引用变量2.2format()函数2.3手动格式化 三、读写文件3.1open()3.2操作文件对象3.3使用 json 保存结构化数据 一、简单输出 str() 函数返回供人阅读的值&#xff0c;repr() 则生成适于解释器读取的值&#xff0…

使用LIMIT进行分页

SELECT employee_id, first_name, salary FROM employees LIMIT 0, 5; 0为偏移量&#xff0c; 5为条目数 每页pageSize条记录&#xff0c;显示第page页 LIMIT (page - 1) * pageSize, pageSize; # 或者 LIMIT pageSize OFFSET (page - 1) * pageSize;

百度富文本编辑器配置(vue3)

今天分享一下我做的项目里面的一个百度富文本的配置问题&#xff0c;安装配置流程以及如何解决的 1.首先是安装组件 # vue-ueditor-wrap v3 仅支持 Vue 3 npm i vue-ueditor-wrap3.x -S # or yarn add vue-ueditor-wrap3.x 2. 下载 UEditor UEditor 并不支持通过 npm 的方式…

YOLOv9改进策略 :小目标 | 注意力 |卷积和注意力融合模块(CAFMAttention) | 2024年4月最新成果

💡💡💡本文独家改进:卷积和注意力融合模块(CAFMAttention),增强对全局和局部特征的提取能力,2024年最新的改进思路 💡💡💡创新点:卷积和注意力巧妙设计 💡💡💡如何跟YOLOv8结合:1)放在backbone后增强对全局和局部特征的提取能力;2)放在detect前面,增…

【蓝桥杯嵌入式】按键控制LED与LCD(必考三件套)

【蓝桥杯嵌入式】按键控制LED与LCD&#xff08;必考三件套&#xff09; 前言LED相关功能的实现LED基础功能函数&#xff08;点亮、全熄灭、翻转&#xff09;LED的闪烁与定时点亮熄灭流水灯的实现 按键的扫描及长短按、双击的实现按键的短按按键业务逻辑程序进程按键的长短按长短…

再聊一聊AUC指标

关于模型评估的指标&#xff0c;之前已经写过不少这方面的文章&#xff0c;最近在实践中又有了一点新的思考&#xff0c;本文对模型评估中的AUC指标再进行一些简单的探讨。 情况一&#xff0c;以下图中的数据为例&#xff0c;1代表用户发生逾期&#xff0c;标记为坏样本&#x…

C#将Console写至文件,且文件固定最大长度

参考文章 将C#的Console.Write同步到控制台和log文件输出 业务需求 在生产环境中&#xff0c;控制台窗口不便展示出来。 为了在生产环境中&#xff0c;完整记录控制台应用的输出&#xff0c;选择将其输出到文件中。 但是&#xff0c;一次性存储所有输出的话&#xff0c;文件会…

Stable Diffusion介绍

Stable Diffusion是一种前沿的开源深度学习模型框架&#xff0c;专门设计用于从文本描述生成高质量的图像。这种称为文本到图像生成的技术&#xff0c;利用了大规模变换器&#xff08;transformers&#xff09;和生成对抗网络&#xff08;GANs&#xff09;的力量&#xff0c;以…

五分钟快速搭建五金行业小程序商城教程解析

作为五金行业的从业者&#xff0c;你可能想要拓展线上业务&#xff0c;提供更方便快捷的购物体验给顾客。而小程序商城成为了一种非常受欢迎的方式。但是&#xff0c;你可能觉得不懂代码无法实现这样的小程序商城。现在&#xff0c;我将通过以下步骤&#xff0c;教你如何在五分…

Github项目推荐-ChatGPT-Admin-Web

项目地址 https://github.com/AprilNEA/ChatGPT-Admin-Web 项目简介 通过api接入大模型&#xff0c;并基于此封装了一层用户管理的功能&#xff0c;适合团队内使用。 项目截图

Vue基础知识:Vue路由——重定向,以及?(可选符)的使用

当网页打开时&#xff0c;url默认是/路径&#xff08;根路径&#xff09;&#xff0c;未匹配到组件时&#xff0c;会出现空白&#xff0c;为了解决这个问题 就要利用重定向 重定向&#xff1a;匹配path后&#xff0c;强制跳转path路径 重定向的语法&#xff1a; {path:匹配…

爬虫实战一、Scrapy开发环境(Win10+Anaconda3)搭建

#前言 在这儿推荐使用Anaconda进行安装&#xff0c;并不推荐大家用pythonpip安装&#xff0c;因为pythonpip的坑实在是太多了。 #一、环境中准备&#xff1a; Win10&#xff08;企业版&#xff09;Anaconda3-5.0.1-Windows-x86_64&#xff0c;下载地址&#xff0c;如果打不开…

易宝OA GetProductInv SQL注入漏洞复现

0x01 产品简介 易宝OA系统是一种专门为企业和机构的日常办公工作提供服务的综合性软件平台,具有信息管理、 流程管理 、知识管理(档案和业务管理)、协同办公等多种功能。 0x02 漏洞概述 易宝OA /SmartTradeScan/Inventory/GetProductInv 接口处存在SQL注入漏洞,未经身份…