标准库及其使用说明
更新时间:2019·04·01
更新内容:课程笔记:time库、random库、turtle库
标准库
Python计算生态由标准库和第三方库构成。
标准库:随解释器直接安装到操作系统中的功能模块。
第三方库:需要经过安装才能使用的功能模块。
time库
time库是Python中处理时间的标准库:能够表达计算机时间,提供获取系统时间并格式化输出功能。同时提供系统级精确计时功能,用于程序性能分析。
import time
time.<b>()
ime库包含三类函数
时间获取:time() ctime() gmtime()
时间格式化:strftime() strptime()
程序计时:
- 时间获取
函数 | 使用 | 描述 |
---|---|---|
time | time.time() | 获取当前时间戳,即计算机内部时间值,浮点数 |
ctime | time.ctime() | 获取当前时间并给出字符串形式的时间 |
gmtime | time.dmtime() | 获取当前时间,表示为计算机可处理的时间格式 |
- 时间格式化
格式化控制符
格式化字符串 | 描述 | 取值范围 |
---|---|---|
Y% | 年份 | 0000~9999 |
%m | 月份 | 01~12 |
%B | 月份名称 | January~December |
%b | 月份名称缩写 | Jan~Dec |
%d | 日期 | 01~31 |
%A | 星期 | Monday~Sunday |
%a | 星期 | Mon~Sun |
%H | 时间(24) | 00~24 |
%I | 时间(12) | 01~12 |
%p | 上午,下午 | AM,PM |
%M | 分钟 | 00~59 |
%S | 秒 | 00~59 |
格式化函数
函数 | 使用 | 描述 |
---|---|---|
strftime | strftime(tpl, ts) | tpl是格式化模板字符串,用来定义输出效果 ts是计算机内部时间类型变量 |
strptime | strptime(str, tpl) | str是字符串形式的时间值 tpl是格式化模板字符串,用来定义输入效果 |
示例
>>>t = time.gmtime()
>>>time.strftime("%Y-%m-%d %H:%M:%S",t)
>>>timeStr = '2018-01-26 12:55:20'
>>>time.strptime(timeStr, "%Y-%m-%d %H:%M:%S")
time.struct_time(tm_year=2018, tm_mon=1, tm_mday=26, tm_hour=4, tm_min=11, tm_sec=16, tm_wday=4, tm_yday=26, tm_isdst=0)
- 程序计时
函数 | 使用 | 描述 |
---|---|---|
perf_counter | time.perf_counter() | 返回一个CPU级别的精确时间计数值,单位为秒 由于这个计数值起点不确定,连续调用差值才有意义 |
sleep | sleep(s) | s拟休眠的时间,单位是秒,可以是浮点数 |
示例
>>>start = time.perf_counter()
318.66599499718114
>>>end = time.perf_counter()
341.3905185375658
>>>end - start 22.724523540384666
>>>def wait():
time.sleep(3.3)
>>>wait() #程序将等待3.3秒后再退出
random 库
rendom库是使用随机数的Python标准库
伪随机数:采用梅森旋转算法生成的(伪)随机序列中的元素
random库主要用于生成随机数
使用random库:import random
random库常用的函数
函数 | 使用 | 描述 |
---|---|---|
seed | seed() | 初始化给定的随机数种子,默认为当前系统时间 |
random | random() | 生成[0.0,1.0]之间的小数 |
randint | randint(a,b) | 生成[a,b]之间的整数 |
randrange | randrange(m,n[,k]) | 生成一个[m,n)之间以k为步长的随机整数 |
getrandbits | gerrandbits(k) | 生成一个k比特长的随机整数 |
uniform | uniform(a,b) | 生成一个[a,b]之间的随机小数 |
choice | choice(seq) | 从序列seq中随机选择一个元素 |
shuffle | shuffle(seq) | 将序列seq中的元素随机排列,返回打乱后的序列 |
需要掌握的能力
- 能够利用随机数种子产生"确定"伪随机数
- 能够产生随机整数
- 能够对序列类型进行随机操作
turtle 库
turtle库是tutle绘图体系的Python实现。
turtle:1969年诞生
- turtle绘图窗体
turtle绘图最小单位为像素
函数 | 使用 | 描述 |
---|---|---|
setup | turtle.setup(width, height, startx, starty) | 定义绘图窗口的宽度,高度,x轴开始坐标,y轴开始坐标 |
- turtle空间坐标体系
函数 | 使用 | 描述 |
---|---|---|
goto | turtle.goto( x, y) | 直线连接当前到(x,y) |
fd | turtle.fd(d) | 向前绘制d个像素 |
bk | turtle.bk(d) | 向后绘制d个像素 |
circle | turtle.circle(r,angle) | 以r为半径,angle为半径弧形绘制 |
- turtle角度坐标体系
函数 | 使用 | 描述 |
---|---|---|
seth | turtle.seth( angle) | 改变绘图方向 |
left | turtle.left(angle) | 向左角度为angle绘制 |
right | turtle.right(angle) | 向右角度为angle绘制 |
- RGB色彩体系
RGB指红黄蓝三个通道的颜色组合
覆盖视力所能感知的所有颜色
RGB每色取值范围0-255整数或0-1小数
常见的RGB色彩
英文名称 | RGB整数值 | RGB小数值 | 中文名称 |
---|---|---|---|
white | 255, 255, 255 | 1,1,1 | 白色 |
yellow | 255, 255, 0 | 1, 1, 0 | 黄色 |
magenta | 255, 0, 255 | 1, 0, 1 | 洋红 |
cyan | 0, 255, 255 | 0, 1, 1 | 青色 |
blue | 0, 0, 255 | 0, 0, 1 | 蓝色 |
black | 0, 0, 0 | 0, 0, 0 | 黑色 |
seashell | 255, 245, 238 | 1, 0.96, 0.93 | 海贝色 |
gold | 255, 215, 0 | 1, 0.84, 0 | 金色 |
pink | 255, 192, 203 | 1, 0.75, 0.80 | 粉红色 |
brown | 165, 42, 42 | 0.65, 0.16, 0.16 | 棕色 |
purple | 160, 32, 240 | 0.63, 0.13, 0.94 | 紫色 |
tomato | 255, 99, 71 | 1, 0.39, 0.28 | 番茄色 |
需要掌握的能力
- turtle库的海龟绘图法
- turtle.setup()调整绘图窗体在电脑屏幕中的布局
- 画布上以中心为原点的空间坐标系: 绝对坐标&海龟坐标
- 画布上以空间x轴为0度的角度坐标系: 绝对角度&海龟角度
- RGB色彩体系,整数值&小数值,色彩模式切换