7个库
库的名字 | 主要功能 |
---|---|
turtle | 基本图形绘制 |
time | 时间的基本处理 |
random | 随机数产生及应用 |
PyInstaller | 源代码打包为可执行文件 |
jieba | 简洁的中文分词 |
wordcloud | 中英文词云生成 |
os | 操作系统小功能 |
模块1: turtle库的使用
turtle库的海龟绘图法
turtle.setup
()调整绘图窗体在电脑屏幕中的布局turtle.setup(width, height, startx, starty)
画布上以中心为原点的空间坐标系: 绝对坐标&海龟坐标
turtle.goto(x, y)
画布上以空间x轴为0度的角度坐标系: 绝对角度&海龟角度
turtle.seth(angle)
turtle.left()
turtle.right()
RGB色彩体系,整数值&小数值,色彩模式切换
turtle.colormode(mode)
- 1.0:RGB小数值模式
- 255:RGB整数值模式
turtle程序语法元素分析
库引用
扩充Python程序功能的方式
使用import保留字完成,采用
<a>.<b>()
编码风格import <库名>
<库名>.<函数名>(<函数参数>)
使用from和import保留字共同完成
from <库名> import <函数名>
from <库名> import *
<函数名>(<函数参数>)
使用import和as保留字共同完成
import <库名> as <库别名>
<库别名>.<函数名>(<函数参数>)
(给调用的外部库关联一个更短、更适合自己的名字)
画笔控制函数
turtle.penup()
turtle.pendown()
turtle.pensize(width)
别名:turtle.width(width)
turtle.pencolor(color)
运动控制函数
turtle.forward(d)
别名:turtle.fd(d)
turtle.circle(r,extent=None)
#根据半径r绘制extent角度的弧形(左手域)#extent是绘制角度,默认是360度整圆
方向控制函数
绝对角度:
turtle.seth(angle)
海龟角度:
turtle.left(angle)
或者turtle.right(angle)
循环语句与
range()
函数循环语句:
按照一定次数循环执行一组语句
for <变量> in range(<次数>):
<被循环执行的语句>
#<变量>表示每次循环的计数,0到<次数>-1
range()
函数产生循环计数序列
- range(N) 产生 0 到 N-1的整数序列,共N个
- range(M,N) 产生M 到 N-1的整数序列,共N-M个
模块2:time库的使用
time库是Python中处理时间的标准库
import time time.<b>()
time库包括三类函数
- 时间获取:
time()
ctime()
gmtime()
- 时间格式化:
strftime()
strptime()
- 程序计时:
sleep()
perf_counter()
函数 描述 time() 获取当前时间戳,即计算机内部时间值,浮点数
>>>time.time()
1516939876.6022282ctime() 获取当前时间并以易读方式表示,返回字符串
>>>time.ctime()
‘Fri Jan 26 12:11:16 2018’gmtime() 获取当前时间,表示为计算机可处理的时间格式
>>>time.gmtime()
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)- 时间获取:
时间格式化
函数 描述 strftime(tpl, ts) tpl是格式化模板字符串,用来定义输出效果
ts是计算机内部时间类型变量
>>>t = time.gmtime()
>>>time.strftime(“%Y-%m-%d %H:%M:%S”,t)
‘2018-01-26 12:55:20’strptime(str, tpl) str是字符串形式的时间值
tpl是格式化模板字符串,用来定义输入效果
>>>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)格式化控制符
格式化字符串 日期/时间说明 值范围和实例 %Y 年份 0000~9999,例如:1900 %m 月份 01~12,例如:10 %B 月份名称 January~December,例如:April %b 月份名称缩写 Jan~Dec,例如:Apr %d 日期 01~31,例如:25 %A 星期 Monday~Sunday,例如:Wednesday %a 星期缩写 Mon~Sun,例如:Wed %H 小时(24h制) 00~23,例如:12 %I 小时(12h制) 01~12,例如:7 %p 上/下午 PM,例如:PM %M 分钟 00~59,例如:26 %S 秒 00~59,例如:26 >>>t = time.gmtime() >>>time.strftime("%Y-%m-%d %H:%M:%S",t) '2018-01-26 12:55:20'
timeStr = ‘2018-01-26 12:55:20’
time.strptime(timeStr, “%Y-%m-%d %H:%M:%S”)
5. **程序计时**
> - 程序计时指测量起止动作所经历时间的过程
> - 测量时间:`perf_counter() `
> - 产生时间:`sleep()`
```python
>>>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秒后再退出
模块3.random库的使用
基本随机数函数
函数 描述 seed(a=None) 初始化给定的随机数种子,默认为当前系统时间
>>>random.seed(10) #产生种子10对应的序列random() 生成一个[0.0, 1.0)之间的随机小数
>>>random.random()
0.5714025946899135>>> import random >>> random.seed(10) >>> random.random() 0.5714025946899135 >>> random.random() 0.4288890546751146 ...
>>> import random >>> random.seed(10) >>> random.random() 0.5714025946899135 >>> random.seed(10) >>> random.random() 0.5714025946899135
扩展随机数函数
函数 描述 randint(a, b) 生成一个[a, b]之间的整数
>>>random.randint(10, 100)
64randrange(m, n[, k]) 生成一个[m, n)之间以k为步长的随机整数
>>>random.randrange(10, 100, 10)
80getrandbits(k) 生成一个k比特长的随机整数
>>>random.getrandbits(16)
37885uniform(a, b) 生成一个[a, b]之间的随机小数
>>>random.uniform(10, 100)
13.096321648808136choice(seq) 从序列seq中随机选择一个元素
>>>random.choice([1,2,3,4,5,6,7,8,9])
8shuffle(seq) 将序列seq中元素随机排列,返回打乱后的序列
>>>s=[1,2,3,4,5,6,7,8,9];random.shuffle(s);print(s)
[3, 5, 8, 9, 6, 1, 2, 7, 4]