1 问题
如何用Python画一个简单的星空?
2 方法
在Python中有着各种各样的工具包,比如math、pillow、requests等等,每个包有着自己专门的功能。要用python画星空,在绘制星空的过程中一般需要运用到turtle工具,它是属于Python的标准库,当然也可以将其称之为海龟库,它能够用于描绘绘图的轨迹,并且操作也比较简单、便捷。
代码清单 1
from turtle import *from random import random,randintscreen = Screen()width ,height = 800,600screen.setup(width,height)screen.title("模拟3D星空")screen.bgcolor("black")screen.mode("logo")screen.delay(0)#这里要设为0,否则很卡t = Turtle(visible = False,shape='circle')t.pencolor("white")t.fillcolor("white")t.penup()t.setheading(-90)t.goto(width/2,randint(-height/2,height/2))stars = []for i in range(200): star = t.clone() s =random() /3 star.shapesize(s,s) star.speed(int(s*10)) star.setx(width/2 randint(1,width)) star.sety( randint(-height/2,height/2)) star.showturtle() stars.append(star)while True: for star in stars: star.setx(star.xcor() - 3 * star.speed()) if star.xcor()<-width/2: star.hideturtle() star.setx(width/2 randint(1,width)) star.sety( randint(-height/2,height/2)) star.showturtle() |
---|
3 结语
针对用Python画一个简单星空的问题,提出使用Python中的turtle工具包的方法,通过实验,证明该方法是有效的,此方法简单易行,但仍有不足或考虑不周的地方,未来可以继续研究更高级算法。