Python程序设计任务驱动式教程-2.3 句子大反转游戏 字符串_第1页
Python程序设计任务驱动式教程-2.3 句子大反转游戏 字符串_第2页
Python程序设计任务驱动式教程-2.3 句子大反转游戏 字符串_第3页
Python程序设计任务驱动式教程-2.3 句子大反转游戏 字符串_第4页
Python程序设计任务驱动式教程-2.3 句子大反转游戏 字符串_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

内容提要求直角三角形面积——Python基本语法实例

超市收银抹零程序编写简单计算器程序——运算符实例

海伦公式求三角形面积句子大反转游戏——字符串实例

敏感词替换程序实例

升级版句子大反转游戏——把英文句子中所有单词逆序【任务描述】编写一个程序,实现英文句子大反转游戏,即把句子中的字符全部逆序。【任务分析】英文句子是一个字符串,包含有英文字母和标点符号。从原字符串末尾取一个字符作为新字符串的第一个字符,再取倒数第二个字符作为新字符串的第二个字符,依次进行。就可以实现句子中的字符全部逆序。【任务实施】用a[::-1]来实现反向的切片,从原字符串末尾每次取一个字符,存入一个列表b中(关于列表的具体内容会在模块五中讲述),然后输出列表b。代码实现:a='IloveChina,Ilovemyfamily'#原字符串b=a[::-1]#将原字符串反向切片print('反转后的句子为:',b)#输出运行结果:反转后的句子为:ylimafymevolI,anihCevolI【任务相关知识链接】字符串是Python中最常用的数据类型之一。字符串专有的运算符有拼接和倍增,可以通过字符串中的索引与切片的方式来截取字符串。

Python提供了丰富的字符串常用的内置函数和字符串处理方法。字符串的概念字符串操作转义字符字符串常用的内置函数和处理方法字符串的概念字符串是一种用来表示文本的数据类型,它是由符号或者数值组成的一个序列,Python中的字符串是不可变的,字符串一旦创建便不可修改。根据字符串内容的多少,分为单行字符串和多行字符串。单行字符串可以用一对单引号('')或者一对双引号("")括起来表示。多行字符串用一对三个单引号('''''')或者一对三个双引号("""""")括起来表示。例如,字符串'China'、"三角形的面积为:"等。字符串操作Python不支持单字符类型,单字符在Python中也是作为一个字符串使用。字符串类型专有的运算符有拼接和倍增。字符串是由一些连续的字符组成,支持索引操作,索引位置从0开始,可以使用方括号和索引的方式访问字符串中的单个字符,也可以使用切片的方式来截取字符串。字符串专有的运算符有拼接和倍增,如表2-8所示。除此之外,比较运算符、成员运算符也可以用于字符串的运算。字符串运算表2-8字符串专有的运算符在Python中,字符串中的每个字符在其序列中是有位置的,以字符串’China’为例,索引值示意图如图2-2所示,索引左边是从0开始,索引右边是从-1开始。可以使用方括号和索引的方式访问字符串中的单个字符,也可以使用切片的方式来截取字符串。字符串中的索引与切片图2-2字符索引示意图具体语法如下:字符串名[索引]#访问字符串中的单个字符字符串名[起始索引:结束索引:步长]#字符串切片(截取)注意:切片(截取)出的字符串不包含结束索引位置的字符,步长为正数表示从左往右截取,默认为1,为负数表示从右往左截取。举例:分别输出字符串’China’中的第2个字符“h”和包含最后三个字符的子串。代码实现:s="China"print(s[1])print(s[2:5:1])运行结果:

字符串中的索引与切片注意:print(s[2:5:1])也可以改写为print(s[2:5:])或print(s[2::]),但是不可以改写成print(s[-1:-4:-1])或print(s[:-4:-1]),因为步长为负数表示从右往左截取,截取的结果是"ani"。如果要截取所有字符,可写为print(s[:])或print(s[::])形式。hina转义字符字符串里存在一些如换行符、制表符等有特殊含义的字符,这些字符被称为转义字符,例如,\n表示换行符,\t表示制表符,Python还允许使用r"字符串"或者R"字符串"的方式表示原义字符串,引号内部的字符默认不转义,保持原样输出。常用的转义字符如表2-9所示。表2-9常用的转义字符举例:分两行输出字符串"I’mstudent.""IloveXi’an!"。代码实现:s="I\'mstudent.\nIloveXi\'an!"print(s)运行结果:转义字符I'mstudent.IloveXi'an!字符串常用的内置函数和基本方法Python安装包、标准库中自带的函数统称为内置函数。“方法”是程序设计中一个专有名词,属于面向对象程序设计领域,是为了完成某些特定功能而定义的一个语句集合。方法也是一个函数,只是调用的方式不同。Python语言中和字符串相关的常用内置函数,除了表2-1中的str(x)、chr(x)、ord(x)、hex(x)、oct(x)之外,还有一个表2-10中的三个。内置函数表2-10字符串常用的内置函数函数功能len(x)返回字符串x的长度,也可以返回其它组合数据类型的元素个数max(x)返回字符串中最大的字母,也可以返回其它组合数据类型的元素个数中的最大值min(x)返回字符串中最小的字母,也可以返回其它组合数据类型的元素个数中的最小值举例:求字母"A"的ASII码,然后将ASII码值转换为十六进制小写形式,再将十六进制小写形式转换为字符串型,求转换后字符串的长度。代码实现:s="A"a=ord(s)h=hex(a)l=len(h)print("A的ASII码为:",a)print("A的ASII码转换为十六进制小写后为:",h)print("转换后字符串的长度为:",l)运行结果:内置函数A的ASII码为:65A的ASII码转换为十六进制小写后为:0x41转换后字符串的长度为:4表2-11列出了常用的字符串处理方法,其中str代表一个字符串或字符串变量。字符串处理方法表2-11字符串处理方法方法说明功能备注str.islower()判断字符串是否全部由小写字母组成判断类型函数

str.isupper()判断字符串是否全部由大写字母组成str.isalpha()判断字符串是否全部由字母组成str.isdigit()判断字符串是否全部由数字组成str.lower()把字符串全部转成小写大小写转换

str.upper()把字符串全部转成大写str.strip()去除字符串左右两边的空白字符去空白字符

str.lstrip()去除字符串最左边的空白字符str.rstrip()去除字符串最右边的空白字符表2-11列出了常用的字符串处理方法,其中str代表一个字符串或字符串变量。字符串处理方法表2-11字符串处理方法str.replace(old,new)把字符串中的old用new代替,代替后的字符串要重新赋值给另外一个变量查找与替换str.startswith('子字符串')判断字符串是不是以括号内的内容开头str.endswith('子字符串')判断字符串是不是以括号内的内容结尾str.find('子字符串')判断字符串中是否包含子字符串,如果有,返回子字符串所在的索引位置,如果没有,返回-1str.index('子字符串')判断字符串中是否包含子字符串,如果有,返回子字符串所在的索引位置,如果没有,那么报错str.split('分隔符')通过引号中内容作为分隔符切割原始字符串,也可以以空格为分隔符,返回是列表(返回的列表中不包含分隔符)拆分与连接'拼接符'.join(seq)将序列seq中的元素用拼接符拼接成字符串,返回是拼接后的字符串字符串格式化输出Python语言中支持两种常用的字符串格式化输出,一种是通过占位符%,另一种是使用str.format()方法。使用占位符%进行格式化输出时,Python会使用一个带有格式符的字符串作为模板,这个格式符用于为真实值预留位置,并说明真实值应该呈现的格式。占位符%表2-12

常用占位符符号说明符号说明%c格式化字符及其ASCII码%o格式化无符号八进制数%s格式化字符串%x|%X格式化无符号十六进制数(小写|大写)%d格式化十进制整数%f格式化浮点数,可指定小数点后的精度%u格式化无符号整数%e|%E用科学计数法格式化浮点数(小写|大写)举例:占位符应用。根据顾客输入的姓名,让顾客核对商品价格。代码实现:name=input("请输入您的姓名:")tel=input("请输入您的电话号码:")price=56.6print("%s您好!您的电话为%s。购买商品总价为:%.2f元。"%(name,tel,price))运行结果:占位符%注意:%.2f中的“.2”部分是指定小数点后保留两位。如果前面的格式字符串中只有一个占位符的话,%后只有一个数据,则不需要加()。例如:print("%s您好!"%name)。请输入您的姓名:晓晓请输入您的电话号码:1234567890晓晓您好!您的电话为1234567890。购买商品总价为:56.60元。使用format()方法也可以对字符串进行格式化输出,与占位符不同的是,使用format()方法不需要关注变量的类型。基本语法是通过{}和:来代替上述占位符%。format()方法格式化数字的多种方法如表2-13所示(假如变量p=52)。使用str.format()方法进行格式化输出使用str.format()方法进行格式化输出表2-13

format()格式化数字的方法格式说明实例运行结果(注意左右的空格){:.2f}保留小数点后两位print("{:.2f}".format(p))52.00{:+.2f}带符号数保留小数点后两位print("{:+.2f}".format(p))+52.00{:.0f}不带小数print("{:.0f}".format(p))52{:0>5d}用5位显示,右对齐,不足位数补0print("{:0>5d}".format(p))00052{:*<5d}用5位显示,左对齐,不足位数补*print("{:*<5d}".ormat(p))52***{:5d}右对齐(默认),用5位显示print("{:5d}".format(p))52{:^5d}居中对齐,用5位显示print("{:^5d}".format(p))52{:,}以“,”分隔的数字格式print("{:,}".format(5200))5,200{:.3%}以百分比格式显示,保留小数点后3位print("{:.3%}".format(p))5200.000%{:.3e}以科学计数法格式显示,保留小数点后3位print("{:.3e}".format(p))5.200e+01举例:用format()方法实现顾客输入的姓名,让顾客核对商品价格。代码实现:name=input("请输入您的姓名:"

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论