Python语言程序设计(第2版) 课件 第5章 字符串与文本分析.pptx

Python语言程序设计(第2版) 课件 第5章 字符串与文本分析.pptx

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第5章字符串与文本分析;1.Unicode码

Unicode编码标准为表达全世界所有语言的任意字符而设计,它使用4字节的数字编码来表达每个字母、符号或文字。每个数字编码代表唯一的至少在某种语言中使用的符号,被几种语言共用的字符通常使用相同的数字来编码,每个字符对应一个数字编码,每个数字编码对应一个字符,即不存在二义性。;2.UTF-8码

UTF-8是一种为Unicode字符设计的变长编码系统,即不同的字符可使用不同数量的字节编码。对于ASCII字符,UTF-8仅使用1个字节来编码。

UTF-8支持中英文编码,英文系统也可以显示中文。Python支持UTF-8编码,中文字符、希腊字母均可以作为标识符使用。例如:

π=3.14159

国家=中国;3.Unicode码与UTF-8码的转换

在Python中,可以通过字符串的encode()方法从Unicode编码为指定编码方式。decode()方法从指定编码方式解码为Unicode方式。例如:

s=汉字ABC

k=s.encode(utf-8)

k

b\xe6\xb1\x89\xe5\xad\x97ABC

k.decode(utf-8)

汉字ABC;5.2.1字符串的索引

为了实现索引,需要对字符串中的字符进行编号,最左边字符编号为0,最右边字符的编号比字符串的长度小1。Python还支持在字符串中使用负数从右向左进行编号,最右边的字符(即倒数第1个字符)的编号为-1。字符串变量名后接用中括号括起来的编号即可实现字符串的索引。;例如:

s=Hello

字符串s中各个字符的索引编号如图所示。;例5-1将一个字符串中的字符按逆序打印出来。

分析:先输出字符串的最后一个字符,且不换行,然后输出倒数第2个字符,同样不换行,一直到第1个字符。利用for循环控制字符索引编号,循环赋值目标变量从0变化到字符串的长度。取字符串的长度可以利用len()函数。

程序如下:

s1=input(Pleaseenterastring:)

foriinrange(0,len(s1)):

print(s1[len(s1)-1-i],end=);5.2.2字符串的分片

字符串的分片就是从给定的字符串中分离出部分字符,这时可以使用以下形式的字符串索引编号。

i:j:k

其中i是索引起始位置,j是索引结束位置但不包括j位???上的字符,索引编号每次增加的步长为k。;例如:

s=HelloWorld!

print(s[0:5:2])

Hlo

s=abcdefg

s[5:1:-1]

fedc

s[-len(s):-1]

abcdef;例5-2利用字符串分片方法将一个字符串中的字符按逆序打印出来。

程序如下:

s1=input(Pleaseenterastring:)

s2=s1[::-1]

print(s2);5.3.1字符串连接操作

1.基本连接操作

字符串表达式是指用“连接”运算符把字符串常量、字符串变量等字符串数据连接起来的有意义的式子,它的一般格式是:

s1+s2+……+sn

其中s1,s2,……,sn均是一个字符串,表达式的值也是一个字符串。例如:

Sub+string

Substring;2.重复连接操作

Python提供乘法运算符(*),构建一个由其自身字符串重复连接而成的字符串。字符串重复连接的一般格式是:

s*n或n*s

其中s是一个字符串;n是一个正整数,代表重复的次数。例如:

ABCD*2

ABCDABCD;例5-3从键盘输入5个字符串,将它们连接成一个字符串后输出。

s=

foriinrange(0,5):

c=input(Pleaseenterastring:)

s+=c

print(s);3.连接操作的其他实现

对于连接操作,可以用格式化操作符或join()函数取代,这样只会有一次内存的申请,以提高操作效率。例如:

{:s}{:s}{:s}.format(Python,,Program)

PythonProgram

.join([Python,,Program])

PythonProgram;5.3.2字符串逻辑操作

1.关系操作

在进行字符串数据的比较时,遵循以下规则。

(1)单个字符比较,按字符ASCII码大小进行比较。

(2)两个相同长度的字符串的比较是将字符串中的字符从左向右逐个比较,如果所有字符都相等,则两个字符串相等,如果两个字符串中有不同的字符,以最左边的第1对不同字符的比较结果为准。

(3)若两个字符串中字符个数不等时,则将较短的字符串后面补足空格后再比较。;例5-4从键盘输入10个英文单词,输出其中以元音字母开头的单词。

分析:输入一个英文单词,并

您可能关注的文档

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档