学Python的漫画漫步进阶 -- 第十一步.常用的内置模块

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块

  • 十一、常用的内置模块
    • 11.1 数学计算模块——math
    • 11.2 日期时间模块——datetime
      • 11.2.1 datetime类
      • 11.2.2 date类
      • 11.2.3 time类
      • 11.2.4 计算时间跨度类——timedelta
      • 11.2.5 将日期时间与字符串相互转换
    • 11.3 正则表达式模块——re
      • 11.3.1 字符串匹配
      • 11.3.2 字符串查找
      • 11.3.4 字符串分割
    • 11.4 点拨点拨——如何使用官方文档查找模块帮助信息
    • 11.5 练一练

十一、常用的内置模块

在真正做项目时,我们会使用别人已经开发好的模块,这样就不必从零开发项目了,还可以加快开发速度。这些模块可能是Python官方提供的,也可能是第三方开发的。Python官方提供的模块,就叫作“内置模块”。

Python有很多内置的定义,包括但不限于以下几类:

  1. 内置函数:Python解释器中预先定义好的函数,也被称为内嵌函数。所有的内置函数都被定义在标准模块builtins中,不需要导入某个模块,可以直接使用。例如,print()就是常用的内置函数之一。
  2. 内置类:Python内置类是在Python中已经预先定义好的类,我们可以直接使用它们,而不需要自己编写它们。例如,list,dict,set等都是Python内置的类。
  3. 内置模块:Python内置模块是Python中已经预先定义好的模块,我们可以直接使用它们,而不需要自己编写它们。例如,math,random等都是Python内置的模块。
  4. 内置常量:Python内置常量是指在Python中已经预先定义好的常量。例如,None表示一个空值,True和False表示布尔类型的真和假等。

以上就是Python内置定义的一些类别,它们为开发者提供了方便的工具和接口,以帮助他们更有效地编写代码。

11.1 数学计算模块——math

在math模块中包含数学运算相关的函数等,例如指数、对数、平方根和三角函数等。

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第1张图片

本节介绍math模块中的一些常用函数,如下表所示:

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第2张图片

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

11.2 日期时间模块——datetime

Python官方提供的日期和时间模块主要是datetime模块。在datetime模块中提供了右侧几个类。

datetime:包含时间和日期。

date:只包含日期。

time:只包含时间。

timedelta:计算时间跨度。

tzinfo:时区信息。

11.2.1 datetime类

datetime类表示日期和时间等信息,我们可以使用如下构造方法创建datetime对象:

在这里插入图片描述

对这些参数的说明如下表所示:

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第3张图片

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

datetime类的常用方法如下:
datetime.today():返回当前的本地日期和时间。
datetime.now(tz=None):返回指定时区的当前日期和时间,参数tz用于设置时区,如果参数tz为None或省略,则等同于today()。
datetime.fromtimestamp(timestamp,tz=None):返回与UNIX时间戳对应的本地日期和时间。UNIX时间戳是从1970年1月1日00:00:00
开始到现在为止的总秒数。我们在Python Shell中运行代码,看看运行结果怎样。

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第4张图片

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第5张图片

11.2.2 date类

date类表示日期信息,我们可以使用如下构造方法创建date对象:

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第6张图片
这些参数的含义和取值范围与datetime类一样,这里不再赘述。
date类的常用方法如下。
date.today():返回当前的本地日期。
date.fromtimestamp(timestamp):返回与UNIX时间戳对应的本地日期。

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第7张图片

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

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第8张图片

11.2.3 time类

time类表示一天中的时间信息,我们可以使用如下构造方法创建time对象:

在这里插入图片描述
这些参数的含义和取值范围与datetime类一样,这里不再赘述。
我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第9张图片

11.2.4 计算时间跨度类——timedelta

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第10张图片

在这里插入图片描述

其中的所有参数都可以为整数或浮点数,也可以为正数或负数,如右表所示。
我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第11张图片

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第12张图片

timedelta可以表示正数或负数时间的间隔,如下代码是等效的。
学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第13张图片

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第14张图片

11.2.5 将日期时间与字符串相互转换

我们经常会遇到将日期时间与字符串相互转换的情况。

1 将日期时间对象转换为字符串时,称之为日期时间格式化。在Python中使用strftime()方法进行日期时间的格式化,在datetime、date和time三个类中都有一个实例方法strftime(format)。

2 将字符串转换为日期时间对象的过程,叫作日期时间解析。在Python中使用datetime.strptime(date_string,format)类方法进行日期时间解析。
在strftime()和strptime()方法中都有一个格式化参数format,用来控制日期时间的格式,常用的日期和时间格式控制符如下表所示

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第15张图片

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

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第16张图片

11.3 正则表达式模块——re

正则表达式指预先定义好一个“字符串模板”,通过这个“字符串模板”可以匹配、查找和替换那些匹配“字符串模板”的字符串。

11.3.1 字符串匹配

字符串匹配指验证一个字符串是否符合指定的“字符串模板”,常用于用户输入验证。例如,用户在注册时要输入邮箱,所以需要验证邮箱是否有效,这就要用到字符串匹配验证。
我们使用match(p,text)函数进行字符串匹配,其中的参数p是正则表达式,即字符串模板,text是要验证的字符串。如果匹配成功,则返回一个Match对象(匹配对象),否则返回None。
我们在Python Shell中运行代码,看看运行结果怎样:

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第17张图片

11.3.2 字符串查找

字符串查找指从一个字符串中查找匹配正则表达式的子字符串,常用于数据分析、网络爬虫等数据处理中。
看漫画学Python:有趣、有料、好玩、好用(全彩版)
常用的字符串查找函数如下。

search(p,text):在text字符串中查找匹配的内容,如果找到,则返回第1个匹配的Match对象,否则返回None。p是正则表达式。

findall(p,text):在text字符串中查找所有匹配的内容,如果找到,则返回所有匹配的字符串列表;如果一个都没有匹配,则返回None。

p是正则表达式。
我们在Python Shell中运行代码,看看运行结果怎样:

11.3.3 字符串替换
正则表达式的字符串替换函数是sub(),该函数替换匹配的子字符串,返回值是替换之后的字符串,其语法格式如下:
学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第18张图片

其中,参数pattern是正则表达式;参数repl是用于替换的新字符串;参数string是即将被替换的旧字符串;参数count是要替换的最大数量,默认值为零,表示不限制替换数量。我们在Python Shell中运行代码,看看运行结果怎样:

11.3.4 字符串分割

在Python中使用re模块中的split()函数进行字符串分割,该函数按照匹配的子字符串进行字符串分割,返回字符串列表对象,其语法格式如下:

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第19张图片
其中,参数pattern是正则表达式;参数string是要分割的字符串;参数maxsplit是最大分割次数;maxsplit的默认值为零,表示分割次数没有限制。

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第20张图片

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

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第21张图片

11.4 点拨点拨——如何使用官方文档查找模块帮助信息

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第22张图片
1 参考7.6节打开官方文档。

2 打开官方模块索引页面。

学Python的漫画漫步进阶 -- 第十一步.常用的内置模块_第23张图片
3 查找模块。例如,如果我们想查找math模块,则需要在索引中找到字母m,进而找到math模块。

11.5 练一练

1 填空题

1)表达式math.floor(-1.6)输出的结果是______。

2)表达式math.ceil(-1.6)输出的结果是______。

2 判断对错:(请在括号内打√或×,√表示正确,×表示错误)。

1)在math模块中进行数学运算,例如指数、对数、平方根和三角函数等。math模块中的函数只对整数和浮点数据进行计算。()

2)正则表达式指预先定义好一个“字符串模板”,通过这个“字符串模板”可以匹配、查找和替换那些符合“模板”的字符串。()

3)四舍五入函数round(a)是在math模块中定义的。()

4)datetime模块的核心类是datetime、date和time,datetime对象可以表示日期和时间等信息,date对象可以表示日期等信息,time对象可以表示一天中的时间信息。()

5)使用datetime.strptime()方法可将字符串’2019-02-29 10:40:26’转换为有效日期。()

你可能感兴趣的:(Python,ARM,MCU,Linux,python,服务器,开发语言,单片机,嵌入式硬件,pycharm,运维)