Python代码雨

news2025/1/6 19:38:40

系列文章

序号文章目录直达链接
1浪漫520表白代码https://want595.blog.csdn.net/article/details/130666881
2满屏表白代码https://want595.blog.csdn.net/article/details/129794518
3跳动的爱心https://want595.blog.csdn.net/article/details/129503123
4漂浮爱心https://want595.blog.csdn.net/article/details/128808630
5爱心光波https://want595.blog.csdn.net/article/details/132311588
6流星雨https://want595.blog.csdn.net/article/details/129395465
7满天星https://want595.blog.csdn.net/article/details/129572082
8烟花秀https://want595.blog.csdn.net/article/details/128746664
9圣诞树https://want595.blog.csdn.net/article/details/128213770
10雪花代码https://want595.blog.csdn.net/article/details/129038108
11模拟星空https://want595.blog.csdn.net/article/details/129948882
12生日蛋糕https://want595.blog.csdn.net/article/details/129694998
13樱花树https://want595.blog.csdn.net/article/details/130350743
14五彩气球https://want595.blog.csdn.net/article/details/130950744
15七彩花朵https://want595.blog.csdn.net/article/details/130897838
16恶搞代码https://want595.blog.csdn.net/article/details/131274862

前言

今天博主给大家带来了有趣的代码雨,一起来看看吧!

Pygame图形库

Pygame入门

Pygame是一个Python库,用于开发2D图形和简单游戏的工具包。它提供了一系列功能来处理图形、声音、输入等方面的开发需求。下面是Pygame入门的基本步骤:

1. 安装Pygame:首先,确保你已经安装了Python。然后,可以使用pip命令在命令行中安装Pygame。在命令行中输入以下命令:`pip install pygame`

2. 导入Pygame模块:在你的Python程序中,使用`import pygame`语句来导入Pygame模块。

3. 初始化Pygame:在程序的开头,使用`pygame.init()`来初始化Pygame。这将初始化Pygame的各种模块和功能。

4. 创建游戏窗口:使用`pygame.display.set_mode()`函数来创建一个游戏窗口。它需要一个元组或列表作为参数,表示窗口的宽度和高度。例如,`screen = pygame.display.set_mode((800, 600))`将创建一个宽800像素、高600像素的游戏窗口。

5. 游戏循环:使用一个while循环来进行游戏的主循环。在每次循环中,处理用户输入、更新游戏状态、绘制图形等操作。这个循环将持续运行,直到玩家关闭游戏窗口。

6. 处理事件:在游戏循环中,使用`pygame.event.get()`函数来获取发生的事件。你可以使用for循环遍历这些事件,处理例如按键、鼠标点击等。

7. 绘制图形:使用各种Pygame函数和方法来绘制图形、精灵、文本等。使用`pygame.display.flip()`来更新屏幕显示。

8. 游戏退出:当玩家关闭游戏窗口时,循环将终止,你可以使用`pygame.quit()`来清理Pygame的资源。

以上只是一个简单的Pygame入门介绍,你可以通过阅读官方文档、查找教程和示例代码来深入学习和理解Pygame的更多功能和用法。祝你使用Pygame开发有趣的游戏!

Pygame基础函数

以下是一些pygame的入门函数和示例代码,帮助你开始使用pygame库:

1. `pygame.init()`: 初始化pygame库。
 

import pygame

pygame.init()

2. `pygame.display.set_mode()`: 创建一个窗口显示界面。

import pygame

# 设置窗口大小为800x600像素
screen = pygame.display.set_mode((800, 600))

3. `pygame.display.set_caption()`: 设置窗口的标题。

import pygame

# 设置窗口标题为"游戏窗口"
pygame.display.set_caption("游戏窗口")

4. `pygame.event.get()`: 获取所有在事件队列中的事件。
 

import pygame

# 获取所有的事件
for event in pygame.event.get():
    # 处理事件
    if event.type == pygame.QUIT:
        # 如果是窗口关闭事件,退出程序
        pygame.quit()

5. `pygame.image.load()`: 加载图像文件。

import pygame

# 加载图片
image = pygame.image.load("image.png")

6. `pygame.draw.rect()`: 绘制矩形。

import pygame

# 绘制一个红色的矩形,左上角坐标为(100, 100),宽度为200,高度为100
pygame.draw.rect(screen, (255, 0, 0), (100, 100, 200, 100))

7. `pygame.font.Font()`: 创建字体对象。

import pygame

# 创建一个字体对象,字体为宋体,大小为25
font = pygame.font.Font("simsun.ttf", 25)

8. `pygame.Surface.blit()`: 在一个Surface对象上绘制另一个Surface对象。

import pygame

# 绘制image图片到screen上,位置为(0, 0)
screen.blit(image, (0, 0))

以上是一些常用的pygame函数和简单示例代码。你可以根据自己的需要进行扩展和调整,开始使用pygame创建游戏或图形应用程序。

Python代码雨

程序设计

import pygame
import random

# 初始化
pygame.init()
font = pygame.font.SysFont('宋体', 25)
screen = pygame.display.set_mode((0, 0), pygame.FULLSCREEN)
screenwidth = screen.get_width()
screenheight = screen.get_height()
surface = pygame.Surface((screenwidth, screenheight), pygame.SRCALPHA)
pygame.Surface.convert(surface)
surface.fill((0, 0, 0, 10))
screen.fill((0, 0, 0, 10))
# 内容
str = [chr(i) for i in range(48, 58)] + [chr(i) for i in range(97, 123)] 
texts = [font.render(i, True, (0, 255, 0)) for i in str]
lst = list(range(99))
……
完整代码文末公众号免费获取哦

程序分析

- 导入pygame和random库。

import pygame
import random

- 调用pygame.init()初始化pygame。

pygame.init()

- 创建字体对象并设置字体样式和大小。

font = pygame.font.SysFont('宋体', 25)

- 创建一个全屏窗口。

screen = pygame.display.set_mode((0, 0), pygame.FULLSCREEN)

- 获取屏幕的宽度和高度。

screenwidth = screen.get_width()
screenheight = screen.get_height()

- 创建一个Surface对象用于在屏幕上绘制透明效果。

surface = pygame.Surface((screenwidth, screenheight), pygame.SRCALPHA)

- 对Surface对象进行转换和填充颜色。

pygame.Surface.convert(surface)
surface.fill((0, 0, 0, 10))

- 在屏幕上填充黑色背景。

screen.fill((0, 0, 0, 10))

- 定义一个包含数字和小写字母的列表,用于生成字符对象。

str = [chr(i) for i in range(48, 58)] + [chr(i) for i in range(97, 123)] 

- 将字符列表中的每个字符渲染为字体对象,并放入一个新的列表中。

texts = [font.render(i, True, (0, 255, 0)) for i in str]

- 创建一个包含0到98的整数的列表。

lst = list(range(99))

- 进入游戏循环,不断处理事件。

- 设置延迟时间为50毫秒,控制字符下落速度。

- 在屏幕上绘制透明背景。

- 遍历整数列表,每次循环选择一个随机字符,并在对应的位置绘制到屏幕上。

- 将整数列表中的元素加1,实现字符下落效果。

- 以5%的概率将整数列表中的元素重置为0,实现字符重新开始下落的效果。

- 调用pygame.display.flip()更新屏幕显示。

尾声

感谢支持!!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JAVA设计模式第七讲:设计模式在 Spring 源码中的应用

设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案。本文以面试题作为切入点,介绍了设计模式的常见问题。我们需要掌握各种设计模式的原理、实现、设计意图和应用场景,搞清楚能解决什么问题…

2022年12月 C/C++(八级)真题解析#中国电子学会#全国青少年软件编程等级考试

C/C++编程(1~8级)全部真题・点这里 第1题:生理周期 人生来就有三个生理周期,分别为体力、感情和智力周期,它们的周期长度为23天、28天和33天。每一个周期中有一天是高峰。在高峰这天,人会在相应的方面表现出色。例如,智力周期的高峰,人会思维敏捷,精力容易高度集中。因…

若依前端vue设置子路径

若依前端vue设置子路径 说明:本文档中以前后端分离版为例,版本为:3.8.6 一设置变量 在.env.development和.env.production 中定义一个变量如VUE_APP_PROJECT_IDENTIFIER # 项目标识字符 VUE_APP_PROJECT_IDENTIFIER admin二引用路径变量 ${process…

在PHP8中统计数组元素个数-PHP8知识详解

在php8中,统计数组元素的个数,有下面几个函数:使用count()函数统计数组元素个数、使用sizeof()函数统计数组元素个数。还讲到了,使用array_count_values()函数来统计数组中每个元素出现的次数。 1、使用count()函数统计数组元素个…

医疗知识图谱 neo4j

开源项目: https://github.com/liuhuanyong/QASystemOnMedicalKG 一.效果 二.需要安装: pip install pyahocorasick pip install py2neo 三.需要修改: 需要改的点: 1.改连接的方式 2.改读文件的方式 MedicalGraph 运行&am…

读懂AUTOSAR,之CAN Driver L-PDU发送和“重入问题”

1. L-PDU发送 L-PDU传输时,Can模块将L-PDU内容ID和数据长度转换为硬件特定格式(如果需要),并触发传输。 [SWS_Can_00059] CAN到内存的数据映射定义为首先发送的CAN数据字节为数组元素0,最后发送的CAN数据字节为数组元素7或63(在CAN FD的情况下)。(SRS_SPAL_12063)[S…

Android图形-Hardware Composer HAL

目录 一、引言 二、概览 三、实现HWC 3.1 为什么是HWC? 3.2 HWC的支持需求 3.3 HWC的实现思路 3.4 HWC的基元 3.5 HIDL接口 3.6 函数指针 3.7 图层和屏幕句柄 3.8 屏幕合成操作 3.9 多个屏幕 3.10 虚拟屏幕合成 3.10.1 模式 3.10.2 输出格式 3.11 同…

房地产微传单制作秘笈

随着科技的快速发展,传统的宣传方式已经无法满足现代人的需求。而电子传单作为一种新型的宣传方式,已经逐渐受到人们的关注和喜爱。特别是对于房地产行业来说,电子传单更是成为了一种节省成本、快速传播的利器。 为了满足各行业的宣传需求&am…

Python接口自动化封装导出excel方法和读写excel数据

一、首先需要思考,我们在页面导出excel,用python导出如何写入文件的 封装前需要确认python导出excel接口返回的是一个什么样的数据类型 如下:我们先看下不对返回结果做处理,直接接收数据类型是一个对象,无法获取返回值…

学单片机有前途吗?

学单片机有前途吗? 个人认为学习任何一门技术都比不学的强,针对学单片机有前途吗?那么比较对象当然就是在整个IT行业做对比。因此我们可以从职业前景、钱景、这几方面综合考量。 学单片机有前途吗?我觉得重要的一点就是是否适合职业生涯发展,总说程序…

STM32F4的USB Slave驱动移植详细步骤及问题解决

文章目录 1、USB库下载2、移植(slave)2.1、工程准备2.2、USB库准备 2.3、移植1、新建USB相关文件夹2、拷贝3、添加USB相关代码4、添加头文件路径5、修改相关内容1、修改usb_conf.h2、定义全局宏USE_USB_OTG_FS3、修改usbd_storage_msd.c4、修改usbd_usr.…

【蒸汽冷凝器型号和PI控制】具有PID控制的蒸汽冷凝器的动力学模型(MatlabSimulink)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

离线数仓同步数据3

业务数据_增量表数据同步 1)Flume配置概述2)Flume配置实操3)通道测试4)编写Flume启停脚本 1)Flume配置概述 Flume需要将Kafka中topic_db主题的数据传输到HDFS,故其需选用KafkaSource以及HDFSSink&#xff…

mysql索引条件下推 、 count(*)、count(1)、IN 、exists等

索引下推 Index Condition Pushdown(ICP),是一种在存储引擎层使用索引过滤数据的优化方式 如果没有ICP,存储引擎会遍历以定位基表中的行,并将他们返回给mysql服务器,有mysql 服务器评估where 后面的条件是否保留行。启用ICP&…

Debian11安装PostgreSQL+PostGIS+pgRouting ,链接Navicat

船新版本,遵循官网教程 1 准备一个Debian11系统2 从官网安装Postgres2.1 安装Postgres2.2 修改Postgres密码2.3 配置Postgres远程访问 3 安装Postgis、pgRouting4 链接Navicat 1 准备一个Debian11系统 2 从官网安装Postgres 2.1 安装Postgres 1 进入Postgre的官网…

GE IC693CPU374CPU模块

处理能力:IC693CPU374 CPU 模块通常具有高性能的处理器,用于执行复杂的控制逻辑和数据处理任务。 内存容量:它通常具有内置的RAM和Flash存储器,用于存储控制程序、数据和配置信息。 多通信接口:该模块通常具有多个通…

集合的笔记

集合 包装类 泛型类有一个不幸的限制, 不能使用基本类型作为类型参数, 解决办法是使用这个包装类, 每一种基本类型都有对应的包装类 基本类型和它们对应的包装类型之间的转换是自动进行的。在调用 add 方法时,个值为 42 的 Integer 类对象在一种被称为自动装箱的过…

redis(0)-安装实操

1.基本概念 key-value型数据库,秒10万级查询。 2.计算向数据移动 3.安装步骤 3.1总体流程 //源码目录:/home/ftp/redis5 src //安装目录:make install /opt/tang/redis5/bin 只是一些bin文件 //make install 只是把bin 复制到某个路…

数据结构与算法学习(day1)——简化版桶排序

文章目录 前言本章目标简化版桶排序题目一题目二 前言 (1)我是一个大三的学生(准确来说应该是准大三,因为明天才报名哈哈哈)。 (2)最近就想每天闲着没事也刷些C语言习题来锻炼下编程水平&#x…