首页 编程 软件学院 查看内容

Python常用内建模块

2017-6-10 00:15 |来自: 互联网 1861 0

摘要: Python 之所以自称“batteries included”,就是因为内置了许多非常有用的模块,无需额外安装和配置,即可直接使用。datetimedatetime 是 Python 处理日期和时间的标准库。获取当前日期和时间获取指定日期和时间要指 ...

Python 之所以自称“batteries included”,就是因为内置了许多非常有用的

模块,无需额外安装和配置,即可直接使用。

  • datetime

datetime 是 Python 处理日期和时间的标准库。获取当前日期和时间

获取指定日期和时间

要指定某个日期和时间,我们直接用参数构造一个 datetime:

str 转换为 datetime

很多时候,用户输入的日期和时间是字符串,要处理日期和时间,首先

必须把 str 转换为 datetime。转换方法是通过 datetime.strptime()实现,

需要一个日期和时间的格式化字符串:

datetime 转换为 str

如果已经有了 datetime 对象,要把它格式化为字符串显示给用户,就需

要转换为 str,转换方法是通过 strftime()实现的,同样需要一个日期和

时间的格式化字符串:

XML

XML 虽然比 JSON 复杂,在 Web 中应用也不如以前多了,不过仍有很

多地方在用,所以,有必要了解如何操作 XML。

DOM vs SAX

操作 XML 有两种方法: DOM 和 SAX。 DOM 会把整个 XML 读入内存,

解析为树,因此占用内存大,解析慢,优点是可以任意遍历树的节点。

SAX 是流模式,边读边解析,占用内存小,解析快,缺点是我们需要自

己处理事件。

正常情况下,优先考虑 SAX,因为 DOM 实在太占内存。

在 Python 中使用 SAX 解析 XML 非常简洁,通常我们关心的事件是

start_element, end_element 和 char_data,准备好这 3 个函数,然后就可

以解析 xml 了。

举个例子,当 SAX 解析器读到一个节点时:

python

会产生 3 个事件:

1. start_element 事件,在读取时;

2. char_data 事件,在读取 python 时;

3. end_element 事件,在读取时。

用代码实验一下:

运行结果

除了解析 XML 外,如何生成 XML 呢? 99%的情况下需要生成的 XML

结构都是非常简单的,因此,最简单也是最有效的生成 XML 的方法是

拼接字符串:

L = []

L.append(r'')

L.append(r'')

L.append(encode('some & data'))

L.append(r'')

return ''.join(L)

如果要生成复杂的 XML 呢?建议你不要用 XML,改成 JSON。

  • urllib

urllib 提供了一系列用于操作 URL 的功能。

Get

urllib 的 request 模块可以非常方便地抓取 URL 内容,也就是发送一个

GET 请求到指定的页面,然后返回 HTTP 的响应:

例如,对豆瓣的一个 URLhttps://api.douban.com/v2/book/2129650 进行

抓取,并返回响应:

运行结果:

本文出处: http://www.toutiao.com/a6429589413911167233/
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部