基于turtle的Python作画
2018年6月12日笔记
- 按win+q键换出搜索界面,输入path,进入系统属性,选择高级,选择环境变量。在系统变量中的PATHEXT这个变量中文本内容为.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC。如果这个文本内容中没有.EXE,在cmd中输入命令的时候则不能省略.exe的后缀,即原本pip install xlwt要写成pip.exe install xlwt。
- 学习用python作画:首先进入python的shell界面,方法是在安装好python的情况下在cmd中运行python命令,就可以进入python的shell界面。
进入以后,导入turtle库。方法是在python的shell中运行命令:from turtle import *。文章后面运行命令的环境都是python的shell。 - 画一条直线,执行下面的两行命令可以实现。
pendown() forward(100)
pendown()的作用是落笔,只有落笔才能作画。
当不作画却想移动画笔的时候要提笔,用函数penup()
forward是画笔向前移动,函数当中参数为移动距离。
forward(100)的意思是画笔向前移动100。
- 画一个边长为200的正方形。
for i in range(4): forward(200) right(90)
- 画一个复杂图形。
def draw1(): reset() speed(10) for i in range(36): forward(200) left(170) reset() speed(10) draw1()
speed()中的参数1-10画图速度递增,但是有一个反例参数为0时速度最快。
reset()会重置画笔,画布,作画速度。
- 顺时针方向画一个200半径的圆:circle(-200)。
逆时针方向画一个200半径的圆:circle(200)。
顺时针画一个100半径的半圆:circle(-100,180)。
顺时针画一个边长为150的正方形:circle(-150,360,4)。 - 将图形涂色示例,画一个红色的半圆。
reset() fillcolor('red') begin_fill() circle(100,180) end_fill()
8.复杂图形涂色示例,画一个“太极”图案。
reset() speed(10) pendown() circle(100,180) circle(200,180) circle(100,-180) fillcolor('black') begin_fill() circle(100,180) circle(200,180) circle(100,-180) end_fill() penup() goto(0,100) dot(50) goto(0,-100) pencolor('white') dot(50) hideturtle()
circle(100)与circle(100,360)两条命令效果相同。
撤回一步:undo(),清空画布:clear()。
- 画一段曲线
for i in range(8): circle(20,100) circle(-20,100)
- 画一个复杂图形,利用循环嵌套方法
from turtle import * reset() speed(0) pendown() for i in range(6): fd(150) for j in range(10): circle(40) lt(36) lt(60)
- 画一个复杂图形,利用循环嵌套方法
from turtle import * reset() speed(0) for i in range(6): pendown() fd(150) for j in range(10): circle(40) lt(36) lt(60) penup() goto(0,0)
- 获取画笔当前位置:position() pos() 两个函数用处一样
设置画笔位置:setposition() setpos()
获取角度:heading()
设置角度setheading() seth() - 画一个椭圆
reset() setheading(45) circle(10,90) circle(90,90) circle(10,90) circle(90,90)
14.画一个笑脸。下面的代码作为一个单独py文件可以运行。
from turtle import * def go(x,y): penup() goto(x,y) pendown() def arc(radius): circle(radius,90) reset() speed(0) go(0,-150) circle(200) go(50,100) seth(225) arc(10) arc(50) arc(10) arc(50) go(-50,100) seth(-45) arc(-10) arc(-50) arc(-10) arc(-50) go(-70,-50) arc(100) hideturtle()
直接在cmd中可能无法运行,需要先定义函数,再调用函数,如下图所示,。
- 画一个酷炫图形。
from turtle import * reset() bgcolor('black') speed(0) colors = ['red','orange','green','cyan','blue','purple'] for i in range(360): pencolor(colors[i%6]) fd(i*3/6+i) left(61) pensize(i*6/200)

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
入门Webpack
2017年12月7日更新,添加了clean-webpack-plugin,babel-env-preset,添加本文涉及到的所有代码的示例,如果你在学习过程中出错了,可点击此处参考 写在前面的话 阅读本文之前,先看下面这个webpack的配置文件,如果每一项你都懂,那本文能带给你的收获也许就比较有限,你可以快速浏览或直接跳过;如果你和十天前的我一样,对很多选项存在着疑惑,那花一段时间慢慢阅读本文,你的疑惑一定一个一个都会消失;如果你以前没怎么接触过Webpack,而你又你对webpack感兴趣,那么动手跟着本文中那个贯穿始终的例子写一次,写完以后你会发现你已明明白白的走进了Webpack的大门。 // 一个常见的`webpack`配置文件 const webpack = require('webpack'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); module.exports =...
- 下一篇
ameba-alios things RTL8710BN 编译下载运行
问题汇总: rel_1.3.0 编译运行hardfault问题 一、 下载/安装 Visual Studio Code https://code.visualstudio.com/ 安装 AliOS Studio 插件 安装 C/C++ 插件,搜索c/c++ 安装 alios-studio 插件,搜索alios-studio 二、请使用Windows7 64bit,使用Install_Win脚本 可以直接使用我们准备好的一键安装包:http://p28phe5s5.bkt.clouddn.com/setup_windows.zip 全部默认下一步就好 不要修改该路径,真的会出错,有洁癖,自行研究吧 如果出现如下问题: 更新下: (1)到C:\Python27\Scripts, 执行:pip install wheel (2)安装setuptools,下载set
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS关闭SELinux安全模块
- CentOS8安装Docker,最新的服务器搭配容器使用
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Windows10,CentOS7,CentOS8安装Nodejs环境
- 设置Eclipse缩进为4个空格,增强代码规范