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 cookielib 登录人人网的实现代码
Dec 19 Python
跟老齐学Python之数据类型总结
Sep 24 Python
老生常谈Python序列化和反序列化
Jun 28 Python
Python 2.x如何设置命令执行的超时时间实例
Oct 19 Python
Python实现识别手写数字 简易图片存储管理系统
Jan 29 Python
Python实现的径向基(RBF)神经网络示例
Feb 06 Python
python实现图书管理系统
Mar 12 Python
python sorted函数原理解析及练习
Feb 10 Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
Nov 20 Python
python 基于opencv实现高斯平滑
Dec 18 Python
如何用Python提取10000份log中的产品信息
Jan 14 Python
基于Python实现流星雨效果的绘制
Mar 18 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统计文件大小,以GB、MB、KB、B输出
2011/05/29 PHP
从PHP $_SERVER相关参数判断是否支持Rewrite模块
2013/09/26 PHP
JavaScript constructor和instanceof,JSOO中的一对欢喜冤家
2009/05/25 Javascript
jQuery EasyUI 中文API Button使用实例
2010/04/14 Javascript
这些年、我收集的JQuery代码小结
2012/08/01 Javascript
javascript学习(二)javascript常见问题总结
2013/01/02 Javascript
在js中判断checkboxlist(.net控件客户端id)是否有选中
2013/04/11 Javascript
js实现通用的微信分享组件示例
2014/03/10 Javascript
ES6数组的扩展详解
2017/04/25 Javascript
详解JS数据类型的值拷贝函数(深拷贝)
2017/07/13 Javascript
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
JavaScript解析及序列化JSON的方法实例分析
2019/01/04 Javascript
浅谈一个webpack构建速度优化误区
2019/06/24 Javascript
Auto.JS实现抖音刷宝等刷视频app,自动点赞,自动滑屏,自动切换视频功能
2020/05/08 Javascript
vue webpack build资源相对路径的问题及解决方法
2020/06/04 Javascript
解决vuex数据页面刷新后初始化操作
2020/07/26 Javascript
浅谈vue使用axios的回调函数中this不指向vue实例,为undefined
2020/09/21 Javascript
解决vue打包 npm run build-test突然不动了的问题
2020/11/13 Javascript
[53:44]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第一场 1月31日
2021/03/11 DOTA
python基础知识小结之集合
2015/11/25 Python
浅谈使用Python内置函数getattr实现分发模式
2018/01/22 Python
Python实用技巧之列表、字典、集合中根据条件筛选数据详解
2018/07/11 Python
Python实现KNN(K-近邻)算法的示例代码
2019/03/05 Python
python绘制双Y轴折线图以及单Y轴双变量柱状图的实例
2019/07/08 Python
Python urllib.request对象案例解析
2020/05/11 Python
丹麦优惠购物网站:PLUSSHOP
2019/03/24 全球购物
关于圣诞节的广播稿
2014/01/26 职场文书
银行简历自我评价
2014/02/11 职场文书
市场营销专业大学生职业生涯规划文
2014/03/06 职场文书
2014年元旦感言
2014/03/06 职场文书
中班幼儿评语大全
2014/04/30 职场文书
温馨提示标语
2014/06/26 职场文书
应聘护士求职信
2014/07/21 职场文书
习近平在党的群众路线教育实践活动总结大会上的讲话
2014/10/21 职场文书
个人委托书范文
2015/01/28 职场文书
感恩的心主题班会
2015/08/12 职场文书