Python利用turtle库绘制彩虹代码示例


Posted in Python onDecember 20, 2017

语言:Python
IDE:Python.IDE

需求

做出彩虹效果

颜色空间

RGB模型:光的三原色,共同决定色相
HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相
需要将HSB模型转换为RGB模型

代码示例

#-*- coding:utf-8 ?*-
from turtle import *

def HSB2RGB(hues):
 hues = hues * 3.59 #100转成359范围
 rgb=[0.0,0.0,0.0]
 i = int(hues/60)%6
 f = hues/60 -i
 if i == 0:
  rgb[0] = 1; rgb[1] = f; rgb[2] = 0
 elif i == 1:
  rgb[0] = 1-f; rgb[1] = 1; rgb[2] = 0
 elif i == 2:
  rgb[0] = 0; rgb[1] = 1; rgb[2] = f
 elif i == 3:
  rgb[0] = 0; rgb[1] = 1-f; rgb[2] = 1
 elif i == 4:
  rgb[0] = f; rgb[1] = 0; rgb[2] = 1
 elif i == 5:
  rgb[0] = 1; rgb[1] = 0; rgb[2] = 1-f
 return rgb

def rainbow():
 hues = 0.0
 color(1,0,0)
 #绘制彩虹
 hideturtle()
 speed(100)
 pensize(3)
 penup()
 goto(-400,-300)
 pendown()
 right(110)
 for i in range (100):
  circle(1000)
  right(0.13)
  hues = hues + 1
  rgb = HSB2RGB(hues)
  color(rgb[0],rgb[1],rgb[2]) 
 penup()

def main():
 setup(800, 600, 0, 0)
 bgcolor((0.8, 0.8, 1.0))
 tracer(False)
 rainbow()
 #输出文字
 tracer(False)
 goto(100,-100)
 pendown()
 color("red")
 write("三水点靠木",align="center",
   font=("Script MT Bold", 80, "bold"))
 tracer(True)

 mainloop()

if __name__ == "__main__":
 main()

效果展示:

Python利用turtle库绘制彩虹代码示例

总结

起初在图片上添加中文“三水点靠木”的时候,由于小编使用的是Python2.x,还发生了乱码,解决方法很简单,在代码前面添加一句

#-*- coding:utf-8 ?*-

更详细办法参考:python中文乱码不着急,先看懂字节和字符

以上就是本文关于Python利用turtle库绘制彩虹代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
在Python的Flask框架中使用模版的入门教程
Apr 20 Python
python结合selenium获取XX省交通违章数据的实现思路及代码
Jun 26 Python
Python使用matplotlib填充图形指定区域代码示例
Jan 16 Python
代码讲解Python对Windows服务进行监控
Feb 11 Python
使用pycharm生成代码模板的实例
May 23 Python
Python unittest模块用法实例分析
May 25 Python
python使用scrapy发送post请求的坑
Sep 04 Python
Linux下安装python3.6和第三方库的教程详解
Nov 09 Python
解决pycharm工程启动卡住没反应的问题
Jan 19 Python
详解Python的爬虫框架 Scrapy
Aug 03 Python
Python爬虫中Selenium实现文件上传
Dec 04 Python
用Python将GIF动图分解成多张静态图片
Jun 11 Python
浅谈Python中range和xrange的区别
Dec 20 #Python
python机器学习实战之树回归详解
Dec 20 #Python
使用python 和 lint 删除项目无用资源的方法
Dec 20 #Python
python机器学习实战之K均值聚类
Dec 20 #Python
Python绘制3d螺旋曲线图实例代码
Dec 20 #Python
python机器学习实战之最近邻kNN分类器
Dec 20 #Python
python3.6 +tkinter GUI编程 实现界面化的文本处理工具(推荐)
Dec 20 #Python
You might like
php判断终端是手机还是电脑访问网站的思路及代码
2013/04/24 PHP
PHP+Javascript实现在线拍照功能实例
2015/07/18 PHP
编写PHP脚本清除WordPress头部冗余代码的方法讲解
2016/03/01 PHP
JS input 数字验证代码
2009/07/30 Javascript
jquery重新播放css动画所遇问题解决
2013/08/21 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
jQuery实现批量判断表单中文本框非空的方法(2种方法)
2015/12/09 Javascript
Angular2 多级注入器详解及实例
2016/10/30 Javascript
Vuex之理解Store的用法
2017/04/19 Javascript
浅谈Angular路由守卫
2017/08/26 Javascript
JS实现闭包中的沙箱模式示例
2017/09/07 Javascript
Vue封装一个简单轻量的上传文件组件的示例
2018/03/21 Javascript
Vue无限滑动周选择日期的组件的示例代码
2018/07/18 Javascript
vue实现文件上传功能
2018/08/13 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
2018/08/16 Javascript
[01:18:36]LGD vs VP Supermajor 败者组决赛 BO3 第一场 6.10
2018/07/04 DOTA
详解Django配置优化方法
2019/11/18 Python
汉森批发:Hansen Wholesale
2018/05/24 全球购物
.NET方向面试题
2014/11/20 面试题
列车长先进事迹材料
2014/01/25 职场文书
高一新生军训感言
2014/03/02 职场文书
毕业生就业协议书
2014/04/11 职场文书
体育教育毕业生自荐信
2014/06/29 职场文书
政工例会汇报材料
2014/08/26 职场文书
标准单位租车协议书
2014/09/23 职场文书
致百米运动员广播稿5篇
2014/10/13 职场文书
党的群众路线教育实践活动个人对照检查材料(医生)
2014/11/05 职场文书
2014年公务员转正工作总结
2014/11/07 职场文书
2014年档案管理工作总结
2014/11/17 职场文书
三好学生个人总结
2015/02/15 职场文书
幼儿园音乐教学反思
2016/02/18 职场文书
什么是求职信?求职信应包含哪些内容?
2019/08/14 职场文书
电子表的操作介绍说明书
2019/10/28 职场文书
致男子1500米运动员的广播稿
2019/11/08 职场文书
Python基础 括号()[]{}的详解
2021/11/07 Python
Win11显卡控制面板打开显卡设置方法
2022/04/20 数码科技