一步步教你用python代码画一幅星空

 更新时间:2023年09月08日 10:36:29   作者:Open-AI  
这篇文章主要给大家介绍了关于如何使用python代码画一幅星空的相关资料,Python是一种非常流行的编程语言,它可以用来创建许多有趣的项目,例如绘制星空,需要的朋友可以参考下

前言

运行代码后,会在画布上画出一些大小不同、位置随机的白色星星,就像是一幅星空一样。你可以根据自己的需求修改代码,调整画布大小、星星数量和大小等参数,让画出来的星空更加逼真。

效果如图所示

代码如下 

import turtle
import random
# 设置画布大小和背景颜色
turtle.setup(800, 600)
turtle.bgcolor('black')
# 定义星星函数
def draw_star(x, y, size):
    turtle.penup()
    turtle.goto(x, y)
    turtle.pendown()
    turtle.color('white')
    turtle.begin_fill()
    for i in range(5):
        turtle.forward(size)
        turtle.right(144)
    turtle.end_fill()
# 画星星
for i in range(50):
    x = random.randint(-400, 400)
    y = random.randint(-300, 300)
    size = random.randint(5, 20)
    draw_star(x, y, size)
# 隐藏画笔
turtle.hideturtle()
# 显示画布
turtle.done()
import turtle  # 导入turtle模块
import random  # 导入random模块,用于生成随机数
# 设置画布大小和背景颜色
turtle.setup(800, 600)  # 设置画布大小为800x600像素
turtle.bgcolor('black')  # 设置背景颜色为黑色
# 定义星星函数
def draw_star(x, y, size):
    """
    画星星的函数
    :param x: 星星的x坐标
    :param y: 星星的y坐标
    :param size: 星星的大小
    """
    turtle.penup()  # 抬起画笔,不绘制轨迹
    turtle.goto(x, y)  # 将画笔移动到指定坐标
    turtle.pendown()  # 放下画笔,开始绘制轨迹
    turtle.color('white')  # 设置画笔颜色为白色
    turtle.begin_fill()  # 开始填充图形
    for i in range(5):  # 循环5次,画出五角星
        turtle.forward(size)  # 向前移动size个像素
        turtle.right(144)  # 向右旋转144度
    turtle.end_fill()  # 结束填充图形
# 画星星
for i in range(50):  # 循环50次,画出50个星星
    x = random.randint(-400, 400)  # 随机生成x坐标
    y = random.randint(-300, 300)  # 随机生成y坐标
    size = random.randint(5, 20)  # 随机生成星星的大小 
    draw_star(x, y, size) # 调用draw_star函数,画出一个星星
turtle.hideturtle() # 隐藏画笔,不显示画笔形状
turtle.done() # 显示画布,进入消息循环,等待用户操作

总结 

到此这篇关于用python代码画一幅星空的文章就介绍到这了,更多相关python代码画星空内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • django 利用Q对象与F对象进行查询的实现

    django 利用Q对象与F对象进行查询的实现

    这篇文章主要介绍了django 利用Q对象与F对象进行查询的实现,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • python使用requests.session模拟登录

    python使用requests.session模拟登录

    最近开发一套接口,写个Python脚本,使用requests.session模拟一下登录.本文通过实例代码给大家介绍python使用requests.session模拟登录,感兴趣的朋友跟随小编一起看看吧
    2019-08-08
  • python区块链简易版交易实现示例

    python区块链简易版交易实现示例

    这篇文章主要为大家介绍了python区块链简易版交易实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • python连接MySQL、MongoDB、Redis、memcache等数据库的方法

    python连接MySQL、MongoDB、Redis、memcache等数据库的方法

    这篇文章主要介绍了python连接操作MySQL、MongoDB、Redis、memcache等数据库的方法,大家可以参考使用
    2013-11-11
  • python语音识别指南终极版(有这一篇足矣)

    python语音识别指南终极版(有这一篇足矣)

    这篇文章主要介绍了python语音识别指南终极版的相关资料,包括语音识别的工作原理及使用代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • pandas DataFrame 赋值的注意事项说明(index)

    pandas DataFrame 赋值的注意事项说明(index)

    这篇文章主要介绍了pandas DataFrame 赋值的注意事项说明(index),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法

    python 出现SyntaxError: non-keyword arg after keyword arg错误解决办

    这篇文章主要介绍了python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法的相关资料,需要的朋友可以参考下
    2017-02-02
  • linux系统使用python获取内存使用信息脚本分享

    linux系统使用python获取内存使用信息脚本分享

    这篇文章主要介绍了linux系统使用python获取内存使用情况信息,大家参考使用吧
    2014-01-01
  • Python随机数模块详情

    Python随机数模块详情

    这篇文章主要介绍了Python随机数模块,随机数模块实现了各种分布的伪随机数生成器。对于整数,从范围中有统一的选择。 对于序列,存在随机元素的统一选择、用于生成列表的随机排列的函数、以及用于随机抽样而无需替换的函数,下文来看看详细内容,需要的朋友可以参考一下
    2021-11-11
  • pytorch张量和numpy数组相互转换

    pytorch张量和numpy数组相互转换

    在使用pytorch作为深度学习的框架时,经常会遇到张量tensor和矩阵numpy的类型的相互转化的问题,本文主要介绍了pytorch张量和numpy数组相互转换,感兴趣的可以了解一下
    2024-02-02

最新评论