100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > Python Turtle 画图:黑洞里的繁星(附源代码)

Python Turtle 画图:黑洞里的繁星(附源代码)

时间:2022-07-15 05:41:08

相关推荐

Python Turtle 画图:黑洞里的繁星(附源代码)

仰望星空,总想看到不一样的星辰。本文就介绍如何利用Turtle 绘画浩瀚宇宙黑洞里的繁星,Turtle是python一个简单好用的绘图包,它可以通过设计坐标来实时控制绘图,易学易用。让我们一起去看星星,体现宇宙与计算机之美。

目录

前言

一、Python Turtle是什么?

二、绘图步骤

1.引入库

2. 创建画板,画笔和颜色

3.绘画大星星

4. 绘画小繁星

5. 画黑洞

三 、黑洞里的繁星效果图

四、附上完整源代码

前言

"天高地迥,觉宇宙之无穷" 人在宇宙,好像太空中一粒沙子那么渺小。 仰望星空,总想看到不一样的星辰。本文就介绍如何利用Python Turtle 绘画浩瀚宇宙黑洞里的繁星,体现宇宙与计算机之美,让我们一起去看星星。

一、Python Turtle是什么?

turtle是python一个简单好用的绘图包,它可以通过设计坐标来实时控制绘图。安装很简单,一行命令:

pip install turtle

二、绘图步骤

1.引入库

import turtle as timport random

2. 创建画板,画笔和颜色

t.setup(800,600)t.colormode(255)t.bgcolor('lavender')t.speed(0)colorlist=['silver','lightgoldenrodyellow','floralwhite','slategrey','lightsteelblue','pink']colorback=['lavender','lightsteelblue']randomColor=['pink','lavender','lightsteelblue','silver','lightgoldenrodyellow','floralwhite','slategrey']angle=60

3.绘画大星星

3.1 随机效果图如下:

3.2 源代码如下:

#画大星星def drawFiveStar (x,y,angle,step,color):t.penup()t.goto(x,y)t.left(angle)t.pendown()t.color(color)t.fillcolor(color)t.begin_fill()for x in range(5):t.forward(step)t.right(144)t.end_fill()for i in range(50):step=random.randint(20,40)x=random.randint(-400,400)y=random.randint(0,300)angle=random.randint(0,36)*10color=random.choice(colorlist)drawFiveStar(x,y,angle,step,color)

4. 绘画小繁星

4.1 随机效果图如下:

4.2 源代码如下:

#画小星星for j in range (200):back1 =random.choice(colorback)t.bgcolor(back1)temp1 =random.choice(colorlist)t.fillcolor(temp1)t.color(temp1)t.begin_fill()temp2 =random.randint(5,15)li2= [5,7,9]temp3= random.choice(li2)for i in range (temp3):t.forward(temp2)t.left(180-180/temp3)t.end_fill()t.hideturtle()t.penup()for k in range(2):t.left(random.randint(10,120))t.forward(random.randint(10,50))

5. 画黑洞

5.1 随机效果图如下:

5.2 源代码如下:

#画黑洞for i in range(600):t.color(randomColor[i%6])t.fd(i)t.rt(angle+1)

黑洞里的繁星效果图

随机效果展示

附上完整源代码

# -*- coding: utf-8 -*-"""Created on Wed Jul 13 09:03:32 @author: Margaret Wong"""import turtle as timport random t.setup(800,600)t.colormode(255)t.bgcolor('lavender')t.speed(0)colorlist=['silver','lightgoldenrodyellow','floralwhite','slategrey','lightsteelblue','pink']colorback=['lavender','lightsteelblue']randomColor=['pink','lavender','lightsteelblue','silver','lightgoldenrodyellow','floralwhite','slategrey']angle=60#画大星星def drawFiveStar (x,y,angle,step,color):t.penup()t.goto(x,y)t.left(angle)t.pendown()t.color(color)t.fillcolor(color)t.begin_fill()for x in range(5):t.forward(step)t.right(144)t.end_fill()for i in range(50):step=random.randint(20,40)x=random.randint(-400,400)y=random.randint(0,300)angle=random.randint(0,36)*10color=random.choice(colorlist)drawFiveStar(x,y,angle,step,color)t.up()t.goto(0,0)t.pendown()#画小星星for j in range (200):back1 =random.choice(colorback)t.bgcolor(back1)temp1 =random.choice(colorlist)t.fillcolor(temp1)t.color(temp1)t.begin_fill()temp2 =random.randint(5,15)li2= [5,7,9]temp3= random.choice(li2)for i in range (temp3):t.forward(temp2)t.left(180-180/temp3)t.end_fill()t.hideturtle()t.penup()for k in range(2):t.left(random.randint(10,120))t.forward(random.randint(10,50))t.up()t.goto(0,0)t.pendown()t.color('purple')t.goto(0,0)t.down()t.bgcolor('black')#画黑洞for i in range(600):t.color(randomColor[i%6])t.fd(i)t.rt(angle+1)t.penup()t.color('white')t.goto(0,0)t.down()t.done()

总结

以上就是今天要讲的内容,本文简单介绍了turtle的使用实例,展示如何使用turtle函数绘画不一样的美。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。