学Python的漫画漫步进阶 -- 第七步

学Python的漫画漫步进阶 -- 第七步

  • 七、字符串
    • 7.1 字符串的表示方式
      • 7.1.1 普通字符串
      • 7.1.2 原始字符串
      • 7.1.3 长字符串
    • 7.2 字符串与数字的相互转换
      • 7.2.1 将字符串转换为数字
      • 7.2.2 将数字转换为字符串
    • 7.3 格式化字符串
      • 7.3.1 使用占位符
      • 7.3.2 格式化控制符
    • 7.4 操作字符串
      • 7.4.1 字符串查找
      • 7.4.2 字符串替换
      • 7.4.3 字符串分割
    • 7.5 动动手——统计英文文章中单词出现的频率
    • 7.6 练一练
    • 7.7 字符串的总结

七、字符串

上一章介绍了列表、元组和字符串等数据类型。本章详细介绍字符串。

7.1 字符串的表示方式

字符串有三种表示方式:普通字符串、原始字符串和长字符串。

7.1.1 普通字符串

学Python的漫画漫步进阶 -- 第七步_第1张图片
我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第七步_第2张图片
普通字符串指用单引号(')或双引号(")括起来的字符串。

学Python的漫画漫步进阶 -- 第七步_第3张图片

常用的转义符如下:

学Python的漫画漫步进阶 -- 第七步_第4张图片

我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第七步_第5张图片

7.1.2 原始字符串


我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第七步_第6张图片

7.1.3 长字符串

如果要使用字符串表示一篇文章,其中包含了换行、缩进等排版字符,则可以使用长字符串表示。对于长字符串,要使用三个单引号(‘’')或三个双引号(""")括起来。
长字符串

学Python的漫画漫步进阶 -- 第七步_第7张图片

我们在Python Shell中运行代码,看看运行结果怎样:
学Python的漫画漫步进阶 -- 第七步_第8张图片

7.2 字符串与数字的相互转换

学Python的漫画漫步进阶 -- 第七步_第9张图片

7.2.1 将字符串转换为数字

将字符串转换为数字,可以使用int()和float()实现,如果成功则返回数字,否则引发异常。

学Python的漫画漫步进阶 -- 第七步_第10张图片
我们在Python Shell中运行代码,看看运行结果怎样:

"80.0"无法被转换为整数

学Python的漫画漫步进阶 -- 第七步_第11张图片
在默认情况下,int()函数都将字符串参数当作十进制数字进行转
换,所以int(‘AB’)会失败。int()函数也可以指定基数(进制)。
学Python的漫画漫步进阶 -- 第七步_第12张图片

7.2.2 将数字转换为字符串

将数字转换为字符串,可以使用str()函数,str()函数可以将很多类型的数据都转换为字符串。

我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第七步_第13张图片

7.3 格式化字符串

7.3.1 使用占位符

要想将表达式的计算结果插入字符串中,则需要用到占位符。对于占位符,使用一对大括号({})表示。

我们在Python Shell中运行代码,看看运行结果怎样:


默认占位符
学Python的漫画漫步进阶 -- 第七步_第14张图片
参数序号占位符
学Python的漫画漫步进阶 -- 第七步_第15张图片
参数名占位符
学Python的漫画漫步进阶 -- 第七步_第16张图片

7.3.2 格式化控制符

在占位符中还可以有格式化控制符,对字符串的格式进行更加精准的控制。
字符串的格式化控制符及其说明如下表所示。
格式化控制符位于占位符索引或占位符名字的后面,之间用冒号分隔,语法:{参数序号:格式控制符}或{参数名:格式控制符}。
学Python的漫画漫步进阶 -- 第七步_第17张图片
学Python的漫画漫步进阶 -- 第七步_第18张图片
我们在Python Shell中运行代码,看看运行结果怎样:

7.4 操作字符串

字符串类为我们提供了丰富的方法来操作字符串。

7.4.1 字符串查找

字符串的find()方法用于查找子字符串。该方法的语法为str.find(sub[,start[,end]]),表示:在索引start到end之间查找子字符串sub,如果找到,则返回最左端位置的索引;如果没有找到,则返回-1。
学Python的漫画漫步进阶 -- 第七步_第19张图片

学Python的漫画漫步进阶 -- 第七步_第20张图片
我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第七步_第21张图片

学Python的漫画漫步进阶 -- 第七步_第22张图片

7.4.2 字符串替换

若想进行字符串替换,则可以使用replace()方法替换匹配的子字符串,返回值是替换之后的字符串。该方法的语法为str.replace(old,new[,count]),表示:用new子字符串替换old子字符串。count参数指定了替换old子字符串的个数,如果count被省略,则替换所有old子字符
串。

学Python的漫画漫步进阶 -- 第七步_第23张图片
我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第七步_第24张图片

7.4.3 字符串分割

若想进行字符串分割,则可以使用split()方法,按照子字符串来分割字符串,返回字符串列表对象。该方法的语法为str.split(sep=None,maxsplit=-1),表示:使用sep子字符串分割字符串str。maxsplit是最大分割次数,如果maxsplit被省略,则表示不限制分割次数。

学Python的漫画漫步进阶 -- 第七步_第25张图片
我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第七步_第26张图片

7.5 动动手——统计英文文章中单词出现的频率


通过Python指令运行文件:

学Python的漫画漫步进阶 -- 第七步_第27张图片

7.6 练一练

1 设有变量s=‘Pyhon’,则"{0:3}".format(s)表达式的输出结果是()。
A.‘hon’ B.‘Pyhon’ C.‘PYTHON’ D.‘PYT’

2 设有变量赋值s="Hello World",则以下选项中可以输出"World"子字符串的是()。
A.print(s[-5:-1]) B.print(s[-5:0]) C.print(s[-4:-1]) D.print(s[-5:])

3 在以下选项中可以倒置"World"字符串的是()。
A."World"[::-1] B."World"[::] C."World"[0::-1] D."World"[-1::-1]

4 判断对错(请在括号内打√或×,√表示正确,×表示错误):。
1)原始字符串是在普通字符串前加r,使用它的优势是:在字符串中特殊字符不需要被转义。()

2)长字符串是,使用三个单引号(‘’')或三个双引号(""")括起来的字符串,使用它的优势是:在字符串中特殊字符不需要被转义。()

3)将字符串转换为数字,可以使用int()和float()函数实现。()

4)将数字转换为字符串,可以使用str()函数实现。()

7.7 字符串的总结

在Python中,字符串是非常重要的一种数据类型。以下是对Python中字符串的一些总结:

  1. 不可变性:Python中的字符串是不可变的,也就是说,一旦创建了一个字符串,就不能更改它的内容。如果尝试修改字符串,那么Python会创建一个新的字符串。
  2. 字面量:字符串可以通过使用引号(单引号或双引号)来表示。例如:s = 'hello's = "hello"。反斜杠可以用来转义特殊字符,例如换行符\n或制表符\t
  3. 字符串拼接:可以使用加号+来拼接两个字符串。例如:s = 'hello' + 'world'
  4. 格式化:Python提供了多种格式化字符串的方式,包括%运算符、str.format()方法和f-string(在Python 3.6及以后的版本中引入)。
  5. 索引和切片:字符串是可索引的,可以通过使用方括号和索引号来访问字符串中的单个字符。例如:s = 'hello'; print(s[1])将输出e。还可以使用切片来访问字符串的一部分。例如:s = 'hello'; print(s[1:4])将输出ell
  6. 方法:Python的字符串类(str)有很多方法,可以用来处理字符串。例如,str.lower()将字符串转换为小写,str.upper()将字符串转换为大写,str.split()将字符串分割为子串,等等。
  7. 编码:Python的字符串是Unicode字符串,这意味着它们可以包含任何Unicode字符。但是,当需要将字符串写入文件或发送到网络时,可能需要将其转换为字节串(使用某种编码,如UTF-8)。
  8. 多行字符串:Python允许使用三引号(单引号或双引号)来创建多行字符串。例如:s = '''This is a multi-line string.'''
  9. 在内存中的存储:由于Python的字符串是不可变的,所以它们在内存中以一种非常高效的方式存储,这使得它们在许多情况下都表现得非常好。

以上就是对Python中字符串的一些主要特性的总结。

你可能感兴趣的:(Python,ARM,MCU,Linux,python,数据库,开发语言,linux,服务器,运维)