一、知识导图
二、turtle库概述
1、turtle库概述
I、turtle(海龟)是Python重要的标准库之一,它能够进 行基本的图形绘制。
II、turtle库绘制图形有一个基本框架:一个小海龟在坐标系 中爬行,其爬行轨迹形成了绘制图形。对于小海龟来说, 有“前进”、“后退”、“旋转”等爬行行为,对坐标 系的探索也通过“前进方向”、“后退方向”、“左侧 方向”和“右侧方向”等小海龟自身角度方位来完成。
III、使用import保留字对turtle库的引用有如下三种 方式
①第一种,import turtle,则对turtle库中函数调 用采用turtle.<函数名>()形式。
import turtle
turtle.circle(200)
②第二种,from turtle import *,则对turtle库中 函数调用直接采用<函数名>()形式,不在使用 turtle.作为前导。
from turtle import *
circle(200)
③第三种,import turtle as t,则对turtle库中函数 调用采用更简洁的t.<函数名>()形式,保留字as 的作用是将turtle库给予别名t
import turtle as t
t.circle(200)
2、turtle库与基本绘图
I、turtle库包含100多个功能函数,主要包括窗体函数、画笔状态函数、画笔运动函数等三类。
①窗体函数
turtle.setup(width, height, startx, starty)
**作用:**设置主窗体的大小和位置
参数:
width:窗口宽度,如果值是整数,表示的像素值;如果值 是小数,表示窗口宽度与屏幕的比例;
height: 窗口高度,如果值是整数,表示的像素值;如果 值是小数,表示窗口高度与屏幕的比例;
startx:窗口左侧与屏幕左侧的像素距离,如果值是None ,窗口位于屏幕水平中央;
starty:窗口顶部与屏幕顶部的像素距离,如果值是None ,窗口位于屏幕垂直中央;
②画笔状态函数
③画笔运动函数
三、random库概述
1、random库概述
I、使用random库主要目的是
II、这个库提供了不同类型的随机数函数,其中 最基本的函数是random.random(),它生成 一个[0.0, 1.0)之间的随机小数,所有其他随 机函数都是基于这个函数扩展而来。
import random as r
print(r.random())
>>>0.9501233142066406
2、random库与随机数运用
I、random库的常用函数
①random库使用random.seed(a)对后续产生的 随机数设置种子a。
import random as r
print(r.seed(10))
print(r.random())
print(r.random())
print(r.seed(10))
print(r.random())
print(r.random())
>>>
None
0.5714025946899135
0.4288890546751146
None
0.5714025946899135
0.4288890546751146
设置随机数种子的好处是可以准确复现随机 数序列,用于重复程序的运行轨迹。对于仅 使用随机数但不需要复现的情形,可以不用 设置随机数种子。如果程序没有显式设置随机数种子,则使用 随机数生成函数前,将默认以当前系统的运 行时间为种子产生随机序列。
四、time库概述
1、time库概述
I、处理时间是程序最常用的功能之一,time库 是Python提供的处理时间标准库。time库提 供系统级精确计时器的计时功能,可以用来 分析程序性能,也可让程序暂停运行时间。
import time
print(time.localtime())
>>>time.struct_time(tm_year=2019, tm_mon=7, tm_mday=17, tm_hour=23, tm_min=29, tm_sec=36, tm_wday=2, tm_yday=198, tm_isdst=0)
II、time库的功能主要分为3个方面:时间处理、 时间格式化和计时。
• 时间处理主要包括4个函数:time.time()、 time.gmtime()、time.localtime() 、time.ctime()。
• 时间格式化主要包括3个函数:time.mktime()、 time.strftime()、time.strptime()。
• 计时主要包括3个函数:time.sleep()、 time.monotonic()、time.perf_counter()。
①使用time.time()获取当前时间戳
>>>import time
>>>time.time()
1516939876.6022282
②使用time.gmtime(secs)获取当前时间戳对应 的struct_time对象
>>> time.gmtime(now)
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)
③使用time.localtime(secs)获取当前时间戳对 应的本地时间的struct_time对象
>>> time.localtime(now)
time.struct_time(tm_year=2018, tm_mon=1, tm_mday=26
tm_hour=12, tm_min=11, tm_sec=16, tm_wday=4,
tm_yday=26, tm_isdst=0)
注意结果与gmtime的区别,UTC时间已自动 转换为北京时间。
③使用time.ctime(secs)获取当前时间戳对应的 易读字符串表示,内部会调用time.localtime() 函数以输出当地时间。
>>> time.ctime(now)
'Fri Jan 26 12:11:16 2018'
五、time库与程序计时