用import turtle来引入此库。
将turtle想象为一只海龟在屏幕中间游走,它所经过的地方就是所绘的图样。可以设定其行进方向、大小、颜色、等。
turtle.setup(宽,高,x,y)
调整绘图窗体在电脑屏幕中的布局,若省略则默认在中间。屏幕最左上角为坐标原点。
turtle.done()
函数,绘制后窗体不会关闭,需要手工关闭退出。
绝对坐标:
turtle空间坐标体系中以窗体的中间为(0,0)点的绝对坐标,即海龟起始位置且面朝x正向。这个坐标值与画布窗体有关,与窗体在屏幕中间的位置无关。 |
对于海龟自身来说,无论它行进朝哪个方向,只要是它所行进的方向叫前进方向,后面叫后退方向,运行的左侧叫左侧方向,右侧叫右侧方向 |
绝对角度:
x轴的正方向表示0度或360度,Y轴正方向表示90或-270度以此类推 |
对于海龟来说的左右方向 |
每色取值0-255整数或0-1小数
常用如下
英文名称 | 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 | 黑色 |
turtle库默认用小数值,但也可以切换
使用turtle.colormode(mode)函数切换,mode写1.0为小数值模式,255为整数值模式。
格式:
import <库名>
<库名>.<函数名>(<函数参数>)
或
from <库名> import<函数名>
或
from<库名> import *#此种方式可能会使库中某个函数与
<函数名>(<函数参数>)#用户自定义某个函数重名
或
import <库名> as <库别名>#以此可方便调用,且防止库重名
<库别名>.<函数名>(<函数参数>)#最建议用这种方式进行库的调用
画笔想象为海龟,画笔操作后一直有效,且一般成对出现
turtle.penup()
别名 turtle.pu()
→ 相 当 于 抬 起 画 笔 , 海 龟 在 飞 行 , 此 时 不 在 画 布 上 形 成 图 案 \to 相当于抬起画笔,海龟在飞行,此时不在画布上形成图案 →相当于抬起画笔,海龟在飞行,此时不在画布上形成图案
turtle.pendown()
别名 turtle.pd()
→ 相 当 于 落 下 画 笔 , 海 龟 在 爬 行 \to 相当于落下画笔,海龟在爬行 →相当于落下画笔,海龟在爬行
turtle.pensize(width)
别名 turtle.width(width) → 相 当 于 设 置 画 笔 宽 度 , 海 龟 的 腰 围 \to 相当于设置画笔宽度,海龟的腰围 →相当于设置画笔宽度,海龟的腰围
turtle.pencolor(color)
color为颜色字符串小写形式或r,g,b值 → 相 当 于 设 置 画 笔 颜 色 \to 相当于设置画笔颜色 →相当于设置画笔颜色
turtle.forward(d)
别名 turtle.fd(d)
→ 相 当 于 海 龟 向 前 行 进 , 走 直 线 。 其 中 d 是 行 进 距 离 , 可 为 负 数 , 当 为 负 数 时 , 海 龟 倒 退 行 进 , 单 位 是 像 素 \to 相当于海龟向前行进,走直线。其中d是行进距离,可为负数,当为负数时,海龟倒退行进,单位是像素 →相当于海龟向前行进,走直线。其中d是行进距离,可为负数,当为负数时,海龟倒退行进,单位是像素
turtle.circle(r,extent=None)
→ 根 据 半 径 r 绘 制 e x t e n t 角 度 的 弧 形 , r 是 海 龟 行 进 的 半 径 , 圆 心 在 海 龟 左 侧 r 距 离 的 位 置 上 \to根据半径r绘制extent角度的弧形,r是海龟行进的半径,圆心在海龟左侧r距离的位置上 →根据半径r绘制extent角度的弧形,r是海龟行进的半径,圆心在海龟左侧r距离的位置上当没有给出第二个参数则绘制圆形。如半径为负数,则圆心在右侧
turtle.setheading(angle)
别名 turtle.seth(angle)
→ 可 改 变 行 进 方 向 , 海 龟 走 角 度 , a n g l e 是 将 海 龟 当 前 的 方 向 改 变 为 一 个 绝 对 的 角 度 \to可改变行进方向,海龟走角度,angle是将海龟当前的方向改变为一个绝对的角度 →可改变行进方向,海龟走角度,angle是将海龟当前的方向改变为一个绝对的角度
海龟视角下方向控制
for<变量> in range(<循环次数>)#变量的值由0~循环次数-1
<被循环执行的语句注意缩进>
'''
如for i in range(5):
print(i)
打印结果是
0
1
2
3
4
i值从0开始逐渐加1
'''
主要作用是与for in range()搭配形成计数循环。
range()产生循环计数序列的函数
range(N)产生0到 N-1的整数序列,共N个,如range(5)产生的是0,1,2,3,4,5
range(M,N)产生从M到N-1的整数序列,共N-M个,如range(2,5)产生的是2,3,4
具体实例如下:绘制一个蟒蛇图案
import turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("blue")
turtle.seth(-40)
for i in range(4):
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()
格式:
import time
time.<b>()
time库包括三类函数
- 时间获取:time(),ctime(),gmtime()
- 时间格式化输出:strftime(),strptime()
- 程序计时:sleep(),perf()_counter()
函数 | 描述 |
---|---|
time() | 获取当前时间戳,即计算机内部时间值,浮点数eg.time.time()结果可读性不高 |
ctime() | 获取当前时间并以易读方式表示返回字符串如time.ctime() |
gtime() | 获取当前时间,表示为计算机可处理的时间格式如:time.gtime() |
将时间以合理方式展示出来
函数 | 描述 |
---|---|
strftime(tql,ts) | tql是格式化模板字符串,用来定义输出效果,ts是计算机内部时间类型的变量。如time.strftime("%Y-%m-%d %H:%M:%S",t)输出为’2018-01-26 12:55:20’ |
strptime(str,tpl) | str是字符串形式的时间值,tpl是格式化时间模板,用来定义时间效果time.strptime(timeStr,"%Y-%m-%d %H:%M:%S")可以将字符串变为计算机内部可操作的时间。 |
解决复杂问题的有效方法
逐步组建复杂系统的有效测试方法
抽象和自动化
从应用需求到软件产品
re库
Python社区https://pypi.org/,在这里可以搜索任何第三方库
如:开发与区块相关的程序
第一步:在pypi.org搜索blockchain
第二步:挑选适合开发目标的第三方库作为基础
第三步:完成自己需要的功能
即使用python自带的pip安装工具
输入(cmd)pip-h打出帮助信息
常用命令如下:
Anaconda(数据处理方面的集成安装工具) https://www.continuum.io:下在并安装这个,就会有800多个库可以使用而不用安装。
某些第三方库pip下载后,需要编译再安装,若操作系统没有编译环境,则能下载但不能安装。
使用http://www.lfd.uci.edu/~gohlke/pythonlibs/(UCI页面)帮助安装
如:安装wordcloud库
步骤一:在UCI页面上搜索wordcloud
步骤二:下载对应版本的文件
步骤三:使用pip.install<文件名>安装
os.path子库以path为入口,用于操作和处理文件路径
import os.path\import os.path as op(op为这个子库的别名)
函数 | 描述 |
---|---|
os.path.abspath(path) | 返回path在当前操作系统中的绝对路径 |
os.path.normpath(path) | 归一化path的表示形式,统一用\分隔路径 |
os.path.relpath(path) | 返回当前程序与文件之间的相对路径(relative path) |
os.path.dirname(path) | 返回path中目录的名称 |
os.path.basename(path) | 返回path中最后的文件名称 |
os.path.join(path,*path) | 组合path与paths,返回一个路径的字符串 |
os.path.exists(path) | 判断path对应文件或目录是否存在,返回true或false |
os.path.isfile(path) | 判断path所对应是否为已存在的文件,返回True或False |
os.path.isdir(path) | 判断path所对应是否为已存在的目录,返回True或False |
os.path.getatime(path) | 返回path对应文件或目录上一次的访问时间 |
os.path.getmtime(path) | 返回path对应文件或目录最近一次的修改时间 |
os.path.getctime(path) | 返回path对应文件或目录的创建时间 |
os.path.getsize(path) | 返回path对应文件大小,以字节为单位 |
os.system(command):执行程序或命令command,在windows中,返回值为cmd的调用返回信息
如import os
os.system("c:\\Windows\\System32\\calc.exe")#调用计算机,执行完成返回0。表示调用成功
--------------------------------------------
import os
os.system("c:\\Windows\\System32\\mspaint.exe\ D:\\PYECourse\\grwordcloud.png")#通过画图程序并打开某个图,要有空格
获取或改变系统环境信息
函数 | 描述 |
---|---|
os.chdir(path) | 修改当前程序操作的路径 |
os.getcwd() | 返回程序的当前路径 |
os.getlogin() | 获得当前系统登陆用户名称 |
os.cpu_count | 获得当前的cpu数量 |
os.urandom | 获得n个字节长度的随机字符串,通常用于加解密运算(有些字符串不能被有效打印,用16进制打印出来) |
参数 | 描述 |
---|---|
-h | 查看帮助 |
–clean | 清理打包过程中的临时文件 |
-D,–onedir | 默认值,生成dist文件夹(但尽量不要使用默认参数) |
-F,–onefile | 在dist文件夹中只生成独立的打包文件 |
-i<图标文件名.ico> | 指定打包程序使用的图标(icon)文件 |
函数和方法 | 描述 |
---|---|
jieba.lcut(s) | 精确模式,返回一个列表类型的分词结果 |
jieba.lcut(s,cut_all=True) | 全模式,返回一个列表类型的分词结果,存在冗余 |
jieba.lcut_for_search(s) | 搜索引擎模式,返回列表类型的分词结果,存在冗余 |
jieba.add_word(w) | 向分词字典增加新词w |
wordcloud库是优秀的词云展示第三方库
(cmd命令行) pip install wordcloud
wordcloud库把词云当做一个WordCloud对象
w=wordcloud.WordCloud(<参数>)
如:
import wordcloud
c=wordcloud.WordCloud()
c.generate("wordcloud by Python")#以空格分隔单词,单词出现多的效果大,很短的单词过滤掉,根据统计配置字号,颜色环境尺寸配置
数据清洗:数据归一化、数据转换、异常值处理
数据挖掘:从数据分析获得知识,产生数据外的价值
WeRobot:微信公众号开发框架
aip:百度AI开放平台接口(人脸、语音、图像搜索等领域功能)
MyQR:提供了生成二维码的系列功能