Python新手上路:“用Python和Pygame创造你的流星雨”

文章目录

  • 一、前言
  • 二、下载安装过程
    • 1.官网下载安装包
    • 2.安装python过程
      • 第一步
      • 第二步
      • 第三步
      • 第四步
      • 第五步
      • 安装完成
    • 3.简单测试Python
      • 3.1 检查 Python 版本号
      • 3.2 打开 Python 解释器
      • 3.3 输入你的第一个代码
      • 3.4 运行 Python 脚本
    • 4.安装Pygame
      • 4.1 cmd命令安装Pygame
      • 4.2 pip升级
      • 4.3 安装PythonTurtle模块
  • 三、实现流星雨
    • 1.编写python程序
    • 2.运行python程序
      • 2.1 通过cmd命令运行
      • 2.2 直接双击python文件运行
    • 2.图片效果
    • 3.动图效果
  • 四、总结


一、前言

最近,我开始关注一位专注于Python编程的博主。她的技术实力和创造力深深地吸引了我,尤其是她编写的“Python流星雨”效果,简直令人叹为观止。那些流动的字符和色彩,宛如编程世界中的一场视觉盛宴,让我对Python编程产生了浓厚的兴趣。

受到她的启发,我也想亲自尝试一下Python编程。毕竟,Python不仅是一门强大且易学的编程语言,还是数据科学、人工智能等领域的重要工具。而且,通过编程,我可以创造出属于自己的独特项目,甚至可能开发出有趣的应用或游戏。

为了实现这个目标,我计划先下载并安装Python,这是运行Python代码的必要环境。

下面是Python下载与安装的全部过程以及实现流星雨的源码。


二、下载安装过程

1.官网下载安装包

从Python官网下载安装包,点击Downloads–>Windows(具体看你自己是Windows还是macOS之类的)

在这里插入图片描述
这里你需要知道你的电脑是64位还是32位的电脑,不清楚的可以去电脑设置–>系统–>关于去查询。

这里我下载的是Stable Releases(稳定发布的版本),右边的Pre-releases(预发布的版本,不一定稳定)。

在这里插入图片描述
电脑位数查询:

在这里插入图片描述

下载完成就是一个python-3.12.1-amd64.exe的应用程序。下面是安装过程。

在这里插入图片描述

2.安装python过程

第一步

双击python-3.12.1-amd64.exe应用程序开始安装,弹出的第一个界面需要你勾选下面两个选项。

  1. Use admin privileges when installing py.exe:安装py.exe时使用管理员权限,这样你就可以在执行程序或命令时,可以更改系统设置或注册表。否则,您只能以普通用户的身份进行读取操作,而没有修改权限,从而无法完成更改操作。
  2. Add python.exe to PATH:将python.exe添加到PATH,也就是把python的路径添加到PATH环境变量中。如果你这里不勾选,后续你需要自己添加环境变量比较麻烦。

然后Install Now是立刻安装,默认路径,这里我是选择下面的Customize installation 自定义安装。

在这里插入图片描述

第二步

接下来会出现这个,这里我就默认全部安装了,然后点击Next下一步。

以下是可选功能的介绍:

  1. Documentation:安装Python文档文件
  2. pip:pip是Python的包管理器,用于安装和管理Python软件包。通过pip,用户可以从Python软件包索引(PyPI)下载和安装第三方软件包,以及管理已安装的包版本。pip的安装和使用非常方便,可以大大简化Python开发过程中的依赖管理任务。
  3. tcl/tk and IDLE:Tkinter(简称Tk)是Python自带的GUI编程库,在安装Python时通常会自动安装。它通常用于创建简单的桌面应用程序和图形用户界面(GUI)。而IDLE是Python自带的集成开发环境(IDE),它提供了许多有用的功能,如代码编辑器、调试器、交互式shell等,是Python初学者常用的工具之一。在安装Python时,如果选择安装“tkinter”和“IDLE”,它们将与Python一起安装,以便在Python开发过程中使用。
  4. Python test suite:Python 测试套件,指的是一组用于测试 Python 编程语言及其标准库的测试案例集合。它包含了大量的单元测试、集成测试和功能测试,用于验证 Python 解释器的正确性以及标准库中各个模块的功能是否正常。
  5. py launcher:是一个用于在 Windows 系统上运行多个 Python 版本的工具,它可以帮助用户快速切换不同版本的 Python 解释器,并且可以方便地运行 Python 脚本。

在这里插入图片描述

第三步

这里本来的路径是C盘,我不想直接安装在C盘,手动修改为E盘。其他默认,最后点击管理员模式安装Install。这里因为用户名是中文名,后续安装pygame老是失败,我就直接安装在虚拟机里面了。

在这里插入图片描述

第四步

它会弹出一个管理员确认,然后就进行到Installing过程,等待安装完成即可。

在这里插入图片描述

第五步

安装完成,关闭这个界面。

在这里插入图片描述

安装完成

安装成功会发现多出来这几个东西。

在这里插入图片描述

3.简单测试Python

安装完 Python 后,您可以通过W+R打开cmd命令进行简单的测试指令来验证 Python 是否成功安装并运行正常:

3.1 检查 Python 版本号

  1. python --version
    在这里插入图片描述

3.2 打开 Python 解释器

  1. python(该命令将打开 Python 解释器,您可以在其中输入 Python 代码并立即执行。)
    在这里插入图片描述

3.3 输入你的第一个代码

  1. print(“Hello, World!”)
    在这里插入图片描述

3.4 运行 Python 脚本

  1. 输入# script.py (换行)print(“Hello, World!”)
    解释器将输出 “Hello, World!”。
    在这里插入图片描述

确认验证 Python 已经成功安装并运行正常。

4.安装Pygame

Pygame是一个强大且易于使用的Python游戏开发库。它为开发者提供了许多用于创建2D游戏的工具和功能,包括图像、声音、事件处理和碰撞检测等。Pygame的跨平台特性也使得开发者能够轻松地将游戏部署到多个操作系统上。除此之外,Pygame还拥有活跃的社区和丰富的资源,为开发者提供了支持和帮助。这些因素共同使得Pygame成为了一个非常适合初学者和专业开发者的游戏开发库。

4.1 cmd命令安装Pygame

我这边采用最简单的方式:通过pip直接安装。
(也可以通过官网下载安装文件安装,这边就不介绍了)

通过W+R打开cmd命令然后输入:pip install pygame (回车)

在这里插入图片描述

等待安装完成。
在这里插入图片描述

4.2 pip升级

这个提示意味着有一个新版本的 pip 可用,并建议您升级到新版本。我直接升级到最新版本:python.exe -m pip install --upgrade pip
在这里插入图片描述

4.3 安装PythonTurtle模块

PythonTurtle是一个基于Python语言的图形库,它基于turtle模块,提供了一种简单而直观的方式来学习和实现绘图。

PythonTurtle模块可以帮助你创建一个画布窗口,并提供了一系列的函数和方法来控制一个海龟(turtle),让它在画布上移动、旋转和绘制各种图形。

你可以通过以下命令来安装PythonTurtle模块:
在这里插入图片描述

三、实现流星雨

1.编写python程序

验证Pygame是否成功安装,我参考网上的例程编写一个python流星雨程序来验证。用Notepad++文件创建一个Python文件,命名为test.py,并将以下代码复制到文件中:

import math # 导入math模块(数学函数)
import turtle as tu # 导入turtle 库(绘制基本的图形、动画)
import random as ra # 导入random 库(生成随机数)tu.setup(1.0, 1.0) # 用于设置窗口的大小
tu.screensize(1.0, 1.0) # 用于设置画布的大小
tu.bgcolor('black')  # 设置画布颜色 黑色
t = tu.Pen()  # 创建一个 Pen 对象(一支画笔),用于绘制图形。
t.ht()  # 隐藏画笔colors3 = ['purple', 'white', 'cyan', 'pink', 'yellow', 'blue']  # 流星的颜色列表class Star():  # 定义流星类def __init__(self):self.x3 = ra.randint(-1500, 1000)  # 流星的横坐标self.y3 = ra.randint(-500, 500)  # 流星的纵坐标self.r3 = ra.randint(50, 100)  # 流星的半径self.t = ra.randint(1, 3)  # 流星的旋转角度self.speed3 = ra.randint(1, 5)  # 流星的移动速度self.color3 = ra.choice(colors3)  # 流星的颜色def star2(self):  # 绘制流星函数t.pensize(1)  # 流星的大小t.penup()  # 提笔t.goto(self.x3, self.y3)  # 移动到流星起始位置t.pendown()  # 落笔t.color(self.color3) # 设置画笔的颜色t.begin_fill() # 开始填充颜色t.fillcolor(self.color3) # 设置填充的颜色t.setheading(-30) # 将角度设置为 -30 度,也就是使其向右倾斜一定角度t.right(self.t) # 调整流星的倾斜角度t.forward(self.r3) # 向前移动一定距离,距离为 self.r3,也就是流星的长度t.left(self.t) # 调整流星末尾的倾斜角度。t.circle(self.r3 * math.sin(math.radians(self.t)), 180)  # 绘制流星头部t.left(self.t) # 调整流星末尾的倾斜角度t.forward(self.r3) # 向前移动一定距离,距离为 self.r3,也就是流星的长度t.end_fill() # 结束填充颜色def move(self):  # 移动函数,控制流星的运动if self.y3 >= -500:  # 当流星还在画布中时self.y3 -= self.speed3  # 设置流星的上下移动速度self.x3 += 2 * self.speed3  # 设置流星的左右移动速度else:  # 当流星超出画布范围时,重置流星的属性self.r3 = ra.randint(50, 100)  # 随机生成流星的半径self.t = ra.randint(1, 3)  # 随机生成流星的旋转角度self.x3 = ra.randint(-1500, -750)  # 随机生成流星的横坐标self.y3 = ra.randint(-500, 1000)  # 随机生成流星的纵坐标self.speed3 = ra.randint(1, 5)  # 随机生成流星的移动速度self.color3 = ra.choice(colors3)  # 随机生成流星的颜色Stars = []  # 用列表保存所有流星
for i in range(50):Stars.append(Star())  # 创建50个流星对象,并添加到列表中while True:  # 开始绘制tu.tracer(0)  # 关闭动画效果t.clear()  # 清空画布内容for i in range(50):  # 绘制50个流星Stars[i].move()  # 移动流星Stars[i].star2()  # 绘制流星tu.update()  # 更新画布
tu.mainloop()   # 运行主循环,程序将在这里一直运行,直到手动关闭程序窗口

2.运行python程序

2.1 通过cmd命令运行

在这里插入图片描述

2.2 直接双击python文件运行

在这里插入图片描述

2.图片效果

在这里插入图片描述

3.动图效果

这里的动图不是python转换的,而是我用FastStone Capture录屏软件录制的视频转换成的gif动图。

在这里插入图片描述


四、总结

从我第一次尝试制作Python流星雨项目开始,虽然我对Python的Turtle库还不是很熟悉,也不清楚如何将结果转化为GIF动图,但这确实标志着我开始学习Python的起点。我渴望使用Python绘制出只属于我自己的节日祝福。

下篇讲一下PyCharm的安装以及pyinstaller打包python文件。

感谢你的观看,谢谢!

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/305348.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GPT分区格式

GPT分区格式 [rootlocalhost ~]# gdisk /dev/sdb -bash: gdisk: 未找到命令 [rootlocalhost ~]# yum -y install gdisk- gdisk命令用于查看磁盘使用情况和磁盘分区(GPT分区格式) - 命令格式:gdisk [选项...] [设备路径] - 常用选项&…

python学习14

前言:相信看到这篇文章的小伙伴都或多或少有一些编程基础,懂得一些linux的基本命令了吧,本篇文章将带领大家服务器如何部署一个使用django框架开发的一个网站进行云服务器端的部署。 文章使用到的的工具 Python:一种编程语言&…

redis的搭建及应用(二)-redis的持久化策略

Redis的持久化策略 RDB RDB持久化是指在指定的时间间隔内将redis内存中的数据集快照写入磁盘,实现原理是redis服务在指定的时间间隔内先fork一个子进程,由子进程将数据集写入临时文件,写入成功后,再替换之前的文件,用二…

pyDAL一个python的ORM(2)pyDAL的安装与初始化

一、pyDAL库的安装 通过PIP方式就能迅速安装 pyDAL pip install pydal 二、PIP安装的常见问题 1、PIP命令无效的排查处理办法 (1)检查是否 启用pip python -m ensurepip --default-pip (2)升级 pip版本 python -m pip inst…

web3方向产品调研

每次互联网形态的改变,都会对世界产生很大的影响,上一次对社会产生重大影响的互联网形态(Web2.0)催生了一批改变人类生活和信息交互方式的企业。 目录 概述DAO是什么?为什么我们需要DAO? 金融服务金融桥接及周边服务D…

Linux下MQTT环境的简单应用及搭建——之Mosquitto

文章目录 前言一、ubuntu搭建mqtt服务器 | 概要二、整体架构流程 | 技术实现细节1、下载源码2、安装Mosquitto3、解压并修改配置文件4、关于Mosquitto常见的一些操作指令5、启动mosquitto6、测试mosquitto测试1:Linux多终端交互测试测试2:Linux与Windows…

一款降压型开关模式转换器解决方案

一、基本概述 TX4145 是一款降压型开关模式转换器。TX4145 在 6-60V 宽输入电源范围内实现不同峰值输出电流,并且具有出色的线电压和负载调整率。 TX4145 采用 PWM 电流模工作模式,环路易于稳定并提供快速的瞬态响应。 TX4145 外部提供 FS 脚&#xf…

Flink Kafka[输入/输出] Connector

本章重点介绍生产环境中最常用到的Flink kafka connector。使用Flink的同学,一定会很熟悉kafka,它是一个分布式的、分区的、多副本的、 支持高吞吐的、发布订阅消息系统。生产环境环境中也经常会跟kafka进行一些数据的交换,比如利用kafka con…

如何在Mac中设置三指拖移,这里有详细步骤

三指拖移手势允许你选择文本,或通过在触控板上用三指拖动窗口或任何其他元素来移动它。它可以用于快速移动或调整窗口、文件或图像在屏幕上的位置。 然而,这个手势在默认情况下是禁用的,因此在本教程中,我们将向你展示如何在你的…

算法导论复习(七) 动态规划

动态规划一般用来求解最优化问题 设计一个动态规划算法一般有以下四步: 描述一个最优解的结构特征。递归地定义最优解的值。计算最优解的值,通常采用自底向上的方法。利用计算出的信息构造出一个最优解。 钢条切割问题 体现了动态规划的一个重要性质&a…

K8S结合Prometheus构建监控系统

一、Prometheus简介 Prometheus 是一个开源的系统监控和警报工具,用于收集、存储和查询时间序列数据。它专注于监控应用程序和基础设施的性能和状态,并提供丰富的查询语言和灵活的告警机制1、Prometheus基本介绍 数据模型:Prometheus 使用时…

什么是 NLP (自然语言处理)

NLP(自然语言处理)到底是做什么? NLP 的全称是 Natural Language Processing,翻译成中文称作:自然语言处理。它是计算机和人工智能的一个重要领域。顾名思义,该领域研究如何处理自然语言。 自然语言就是我…