文章目录
- 简介
- 操作系统接口
- 文件通配符
- 命令行参数
- 错误输出重定向和程序终止
- 正则匹配
- 数学
- 日期和时间
- 测试模块
简介
python的标准库是与python一同发行的组件。在安装的时候挺长会包含在安装程序中。python的标准库十分庞大,因此标准库中的组件设计范围也相当广、开发者可以依靠它们实现系统级别的功能,例如文件I/O,日常编码中问题的标准解决方案。
操作系统接口
OS模块提供了许多与操作系统关联的函数,如下所示:
import os
os.getcwd()
虽然from os import *也可以引入该模块所有内容,但是笔者还是建议使用import os的风格。因为这样可以保证随操作系统不同而有所改变的os.open()方法不会覆盖内置函数open()。
在使用os这样的大型模块的时候,其中内置的dir()方法和help()方法能派上用场。
文件通配符
glob模块提供一个用来通过目录通配符搜索生成文件列表的函数。
命令行参数
命令行参数经常在叫本宫局长被调用,这些命令行参数会以链表的形式存储在sys模块中的argv变量里。如下所示:
错误输出重定向和程序终止
sys 还有 stdin,stdout 和 stderr 属性,即使在 stdout 被重定向的时候,后者也能够用来显示警告和错误信息。大部分脚本程序的定向终止使用到的是 “sys.exit()”。
sys.stderr.write('Warning!\n')
正则匹配
re模块为字符串处理提供了正则表达式,在复杂的匹配处理方面。正则表达式这一方案相对于其他方案来说更为简洁、优雅。
数学
有关数学计算的模块是math模块,它为浮点运算提供了对底层C函数库的访问:
import math
dtcloud = math.cos(math.pi / 4)
print(dtcloud)
random库为开发者提供了随机数生成的方法。
如下所示:
import random
dtcloud = random.choice(['dtcloud', 'dtcloud360', '亿智云'])
print(dtcloud)
import random
dtcloud = random.random()
print(dtcloud)
日期和时间
处理日期和事件的标准库是datatime模块,它提供了从简单到复杂的日期时间处理算法。它还支持格式化的输出和更高效的处理方式。。它同时还支持时区处理。
from datetime import date
now = date.today()
print(now)
from datetime import date
now = date.today()
dtcloud = now.strftime("%m-%d-%y. %d %b %Y is a %A on the %d day of %B.")
print(dtcloud)
测试模块
测试代码是高质量软件开发的重要一环。在开发过程中也需要经常测试。
doctest模块提供了扫描模块并根据程序内嵌字符串测试的工具。
如下所示:
def average(values):
"""Computes the arithmetic mean of a list of numbers.
>>> print(average([20, 30, 70]))
40.0
"""
return sum(values) / len(values)
import doctest
print(doctest.testmod())