本文主要研究的是Python编程turtle的实例,绘制一个七彩蟒蛇。。具体如下。

第2周的课后练习里,有一道题目,要求修改“蟒蛇绘制”程序,对Python 蟒蛇的每个部分采用不同颜色,绘制一条彩色蟒蛇。

原蟒蛇绘制程序如下:

因为刚开始学Python,不太熟悉,所以自己加了一些注释,方便理解。

#蟒蛇绘制

import turtle

def drawSnake(rad,angle,len,neckrad):

for i in range(len):

turtle.circle(rad,angle) #画圆 rad:圆半径 angle:圆弧度

turtle.circle(-rad,angle) #运行轨迹右侧rad远的地方绘制圆

turtle.circle(rad,angle/2)

turtle.fd(rad) #表示直线爬行,forward,参数表示爬行的距离

turtle.circle(neckrad+1,180)

turtle.fd(rad*2/3)

def main():

turtle.setup(1300,800,0,0) #设置窗口宽+高+起始位置

pythonsize = 30

turtle.pensize(pythonsize) #设置笔的宽度

turtle.pencolor("blue") #设置笔的颜色

turtle.seth(-40) #设置笔的起始角度

drawSnake(40,80,5,pythonsize/2)

通过仔细分析了该代码,发现这段代码中画笔的颜色,是通过pencolor()来设置,如果想要将颜色变为彩色,显然不能再用这种方法,因此我想到了用列表来解决这个问题,于是在drawSnake里创建一个名为colors的列表变量并且在列表中放置6种颜色,如下所示:

colors = [“red”,”orange”,”yellow”,”green”,”cyan”,”blue”]

在此之前呢,因为原先的程序里,len的值是5,因此画出来的蟒蛇的身体只有五部分,为了显示为七彩,特地将len的值改为6.

在for循环里,在绘画之前,增加了一条语句,用来设置画笔的颜色:

turtle.color(colors[i])

colors[i]中,i和for循环里的是同一个变量,当i从0变化到5,相应的,color()就会从前面所添加的、名为colors的颜色名称列表中选取一种颜色,设置为画笔的颜色。

而蟒蛇的头部,则利用turtle.color(“purple”)设置为第7种颜色。

运行之后,我发现turtle每次绘图,都是从画板的中心开始的,我觉得不太好看,于是想找到一种方法能够改变绘图的起点,目前我找到的方法是,利用penup(),goto(),pendown()命令来改变画笔起点的位置,如下所示:

turtle.penup()

turtle.goto(-350,0)

turtle.pendown()

如果后续再发现更好的方法,再更新。

一条七彩的蟒蛇就绘制好啦~

#蟒蛇绘制

import turtle

def drawSnake(rad,angle,len,neckrad):

colors = ["red","orange","yellow","green","cyan","blue"]

for i in range(len):

turtle.color(colors[i])

turtle.circle(rad,angle)

turtle.circle(-rad,angle)

turtle.color("purple")

turtle.circle(rad,angle/2)

turtle.fd(rad)

turtle.circle(neckrad+1,180)

turtle.fd(rad*2/3)

def main():

turtle.setup(1300,800,0,0)

turtle.penup()

turtle.goto(-350,0)

turtle.pendown()

pythonsize = 30

turtle.pensize(pythonsize)

turtle.seth(-40)

drawSnake(40,80,6,pythonsize/2)

main()

结果展示:

总结

以上就是本文关于Python实现七彩蟒蛇绘制实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

您可能感兴趣的文章:

如何用python画七彩蟒蛇_Python实现七彩蟒蛇绘制实例代码相关推荐

  1. python输出星号等腰三角形_python打印直角三角形与等腰三角形实例代码

    python打印直角三角形与等腰三角形实例代码 前言 本文通过示例给大家详细介绍了关于python打印三角形的相关,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 1.直角三角形 #i ...

  2. python 写入第二列_python读写Excel表格的实例代码(简单实用)

    这篇文章主要介绍了python读写Excel表格的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下.需要先安装两个库:pip install xlrd.pip ...

  3. 如何用python画散点图矩阵_Python的散点图竟然能画这么好看

    你以为的散点图长这样: 其实散点图还可以长这样: 气泡图 大雁南飞图 看起来是不是即高大上又美观,下面就带着大家一起学习一下如何用pyecharts画出漂亮的散点图 一.最基本的散点图 frompye ...

  4. python画棒棒糖程序_Python使用turtle库绘制小猪佩奇(实例代码)

    turtle(海龟)是Python重要的标准库之一,它能够进行基本的图形绘制.turtle图形绘制的概念诞生于1969年,成功应用于LOGO编程语言. turtle库绘制图形有一个基本框架:一个小海龟 ...

  5. python随机颜色数字_python颜色随机生成器的实例代码

    1. 代码: def random_color(number=number): color = [] intnum = [str(x) for x in np.arange(10)] #Out[138 ...

  6. python获取图片坐标_python提取照片坐标信息的实例代码

    python提取照片坐标信息的代码如下所示: from PIL import Image from PIL.ExifTags import TAGS import os output="Z: ...

  7. 如何用python画爱心型线_python怎么画爱心

    Python可以使用turtle库来画爱心. Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指 ...

  8. 如何用python画函数曲线_python 画函数曲线示例 用python 怎么画函数图像

    Python如何画函数的曲线 输入以下代码导入小编们用到的函数库. >>> import numpy as np >>> import matplotlib.pyp ...

  9. 如何用python画函数曲线_Python笔记:用matplotlib绘制函数曲线图

    # 导入相关的包 import numpy as np import matplotlib.pyplot as plt import matplotlib as mpl #%%配置全局绘图参数 #设置 ...

  10. 如何用python画组合图形_python结合G2绘制精美图形

    $.getJSON('top10.json', function (data) { var Frame = G2.Frame; var frame = new Frame(data); var cha ...

最新文章

  1. qregexp限制数字范围_计算一列数字的平均值
  2. ospf路由 华3_「分析」大型企业中必用的动态路由OSPF
  3. Spring boot依赖版本管理
  4. 基于连通域字符分割的流程_基于连通域的版面分割研究
  5. Linux shell字符串运算
  6. wxWidgets:wxWindowUpdateLocker类用法
  7. 怎么在云服务器上建网站_云服务器怎么做安全维护
  8. jquery中prop()和attr()的使用
  9. myisam读取速度为什么比innodb快_为什么MySQL用B+树做索引
  10. 过磅系统_集团公司首个过磅计量及销售结算新系统上线试运行
  11. mfc opengl 三维地形图_衢州三维动画制作传媒企业哪家好2020收费
  12. C++11/14::右值引用
  13. Android Multimedia框架总结(二十五)MediaProjection实现手机截屏(无须root)
  14. SQLite 3.7.13的加密解密(三)—— 创建加密解密函数
  15. oracle数据库第十一章答案,[转载]《互联网数据库》网上作业练习题10-11章答案...
  16. Icode编程>>>图形化编程>>>1级训练场>>>重复执行练习【1】
  17. iframe标签详解
  18. POJ3608-旋转卡壳
  19. Unity3D FPS射击游戏
  20. 纽约州立大学水牛城分校计算机科学专业,美国布法罗大学(纽约州立大学水牛城分校)介绍/专业/申请条件/奖学金 | Hotcourses中国...

热门文章

  1. foot元素内容未满或超过一页都底部显示
  2. twitter账号解封
  3. 9.2 常用缩写汇总表
  4. oracle中的latch: cache buffers chains 与热块
  5. 百度地图线路颜色_你是铁路大亨吗?五个值得收藏的铁路地图网站
  6. 2021-10-25win10如何禁用自带的键盘和鼠标
  7. express中间件原理
  8. 腾讯手机管家ROOT功能分析
  9. Qemu虚拟化PowerPc
  10. 为什么要有无参构造方法,无参构造的运行原理