Python绘制随机彩色蟒蛇方法浅析

 更新时间:2022年12月30日 14:35:54   作者:破壁人x  
这篇文章主要介绍了python实现绘制随机彩色蟒蛇的效果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧

今天老师提出了一个问题就是用turtle库绘制随机颜色的蟒蛇 并且每段的颜色都是不一样的 所以我写了这段代码 这段代码的思路是把不同颜色通过字典的方式存起来 通过随机数库就可以随机生成对应的key来调用这些颜色从而实现随机颜色的效果

import turtle
import random#导入随机数模块实现随机颜色的功能
#把不同颜色用字典的方式储存 key为1到6的整数
colors = {1:'blue',2:'yellow',3:'red',4:'purple',5:'black',6:'green'}
turtle.setup(650,350,200,200)
turtle.pu()
turtle.fd(-250)
turtle.pendown()
turtle.width(25)
turtle.seth(-40)
for i in range(4):
    a = random.randrange(1,7)#获取随机数并赋值给a
    turtle.pencolor(colors[a])#通过索引的方式选择颜色(颜色是随机的)
    turtle.circle(40,80)
    a = random.randrange(1,7)#获取随机数并赋值给a
    turtle.pencolor(colors[a])#通过索引的方式选择颜色(颜色是随机的)
    turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()

这个是运行结果

不过这样子把一个一个颜色存进去太过麻烦 而且颜色太少了只局限于黑,绿 蓝,红,黄这几种颜色 没有达到随机颜色的目的 所以我加以改进 代码如下

import turtle
import random  # 导入随机数模块实现随机颜色的功能
turtle.colormode(255)  # 把颜色表示法取值的模式从[0-1]之间改成[0-255]
#定义一个生成颜色的模块
def colorchoose():
    a, b, c = random.randrange(0, 256), random.randrange(0, 256), random.randrange(0, 256)
    color = (a, b, c)
    return color   #返回值是一个rgb颜色
turtle.setup(650, 350, 200, 200) 
turtle.pu()
turtle.fd(-250)
turtle.pendown()
turtle.width(25)
turtle.seth(-40)
for i in range(4):
    turtle.pencolor(colorchoose())  # 调用模块 随机生成rgb颜色
    turtle.circle(40, 80)
    turtle.pencolor(colorchoose())  # 调用模块 随机生成rgb颜色
    turtle.circle(-40, 80)
turtle.circle(40, 80 / 2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2 / 3)
turtle.done()

这段代码里的颜色变换直接取决于rgb颜色的三个参数 所以我让他们变为随机的 范围定在0-255(注:python里的rgb颜色参数模式默认是0-1 用turtle的话需要用turtle.colormode(255) 语句把模式转换成0-255否则会报错) 定义了一个模块的原因是因为不停通过赋值的方式改变rgb的三个参数是在太麻烦 所以通过调用具有生成随机颜色功能的模块的方式更加省力 以下是运行结果

看,随机颜色的功能是不是实现了?

到此这篇关于Python绘制随机彩色蟒蛇方法浅析的文章就介绍到这了,更多相关Python绘制彩色蟒蛇内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • python结束程序运行的四种方法

    python结束程序运行的四种方法

    大家好,小编为大家解答python结束程序的代码用什么符号的问题,很多人还不知道python如何结束程序运行,文中通过代码示例和图文结合的方式介绍的非常详细,现在让我们一起来看看吧
    2024-07-07
  • Python创建相同值数组/列表的两种方法

    Python创建相同值数组/列表的两种方法

    众所周知数组是一种用来在计算机中存储连续的相同类型数值的数据结构,这篇文章主要给大家介绍了关于Python创建相同值数组/列表的两种方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • pandas DataFrame 根据多列的值做判断,生成新的列值实例

    pandas DataFrame 根据多列的值做判断,生成新的列值实例

    今天小编就为大家分享一篇pandas DataFrame 根据多列的值做判断,生成新的列值实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • tensorflow实现从.ckpt文件中读取任意变量

    tensorflow实现从.ckpt文件中读取任意变量

    这篇文章主要介绍了tensorflow实现从.ckpt文件中读取任意变量,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • Python通过调用有道翻译api实现翻译功能示例

    Python通过调用有道翻译api实现翻译功能示例

    这篇文章主要介绍了Python通过调用有道翻译api实现翻译功能,结合实例形式分析了基于Python实现的有道翻译api调用相关操作技巧,需要的朋友可以参考下
    2018-07-07
  • python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)

    python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)

    这篇文章主要介绍了python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • python通过第三方库操作PDF文件的几种常见方法

    python通过第三方库操作PDF文件的几种常见方法

    Python是一种高级编程语言,主要用于数据分析、机器学习、图像处理等领域,在PDF文件处理方面,Python有许多强大的库和工具,这篇文章主要给大家介绍了关于python通过第三方库操作PDF文件的几种常见方法,需要的朋友可以参考下
    2024-02-02
  • python re库的正则表达式入门学习教程

    python re库的正则表达式入门学习教程

    这篇文章主要给大家介绍了关于python re库的正则表达式的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • Python 正则表达式入门(初级篇)

    Python 正则表达式入门(初级篇)

    本文主要为没有使用正则表达式经验的新手入门所写。由浅入深介绍了Python 正则表达式,有需要的朋友可以看下
    2016-12-12
  • Python建立Map写Excel表实例解析

    Python建立Map写Excel表实例解析

    这篇文章主要介绍了Python建立Map写Excel表实例解析,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01

最新评论