Python代码雨

系列文章

序号文章目录直达链接
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 pygamepygame.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.rhkb.cn/news/123423.html

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

相关文章

python通过docker打包执行

背景 正常情况下,python脚本执行需要安装有python环境,那python环境虽然也可以通过移植的方法来安装,那总归是比较麻烦的,下面通过docker打包的方式来执行python脚本 1、安装python镜像 准备两个文件即可,dockerfile、requirements.txt两个文件的内容分别如下 同目录下…

肖sir__设计测试用例方法之梳理测试点11(微信发红包)

梳理测试点 讲解测试点: 1、定义:测试点就是测试的功能点,是指在软件测试过程中需要覆盖或关注的特定功能,特性或场景。 2、流程:拿到需求,梳理测试点(一般使用xmind图梳理),在根据测试点使用测…

Python爬虫-爬取文档内容,如何去掉文档中的表格,并保存正文内容

前言 本文是该专栏的第58篇,后面会持续分享python爬虫干货知识,记得关注。 做过爬虫项目的同学,可能或多或少爬取过文档数据,比如说“政务网站,新闻网站,小说网站”等平台的文档数据。爬取文档数据,笔者这里就不过多详述,而本文,笔者将主要介绍在爬取文档数据的过程中…

API接口已经成为企业应用程序开发和管理的重要组成部分

API接口的价值 随着数字化时代的到来,API接口已经成为企业应用程序开发和管理的重要组成部分。API不仅是一种连接不同系统、提高数据流动性和促进协作的工具,而且还是一种重要的商业战略,可以为组织带来许多实际的价值。本文将探讨API接口的…

端口扫描-安全体系-网络安全技术和协议

端口扫描-安全体系-网络安全技术和协议 端口扫描信息安全的保证体系和评估方法网络安全技术网络攻击和威胁(重要)网络安全协议 端口扫描 全TCP连接:三次握手 半打开式扫描:前两次握手 FIN扫描:不用建立TCP连接 第三方扫描: 拒绝服务攻击有: 同步包风暴ICMP攻击SNMP攻击 都是修改…

LeetCode 15 三数之和

题目链接 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 题目解析 // 1. 排序双指针 // 2. 固定一个值nums[i] 然后去剩下的位置去找 两数之和符合nums[j]nums[k]是否等于-nums[i] // 3. 细节问题:由于题目中是不可以包含重复的三元组的…

提升效率:PostgreSQL准确且快速的数据对比方法

作为一款强大而广受欢迎的开源关系型数据库管理系统,PostgreSQL 在数据库领域拥有显著的市场份额。其出色的可扩展性、稳定性使其成为众多企业和项目的首选数据库。而在很多场景下(开发|生产环境同步、备份恢复验证、数据迁移、数据合并等)&a…

Maven 必备技能:MAC 系统下 JDK和Maven 安装及环境变量配置详细讲解

开发中难免因系统问题或者版本变更反复折腾JDK和Maven环境变量,干脆写个笔记备忘个,也方便小伙伴们节省时间。 JDK安装与环境变量配置 1.官网下载jdk mac安装包: Java Downloads | Oracle " https://www.oracle.com/java/technologies/downloads…

Docker原理详细剖析-Namespace

一、简介 docker容器技术从2013年开始火了以后,2014年左右当时有幸在学校能和学院教授一起做些项目以及学习。其中docker技术在当时来说还算是比较新的技术,国内关于这块的资料以及使用也才刚刚开始,讨论docker技术,算是相对时髦的…

leetcode 1859.将句子排序

⭐️ 题目描述 &#x1f31f; leetcode链接&#xff1a;将句子排序 代码&#xff1a; class Solution { public:string sortSentence(string s) {vector<string> record;record.resize(9);string curString;for (auto val : s) {if (isdigit(val)) {record[ val - 0 - …

数据挖掘导论学习笔记1(第1 、2章)

参考&#xff1a;https://blog.csdn.net/u013232035/article/details/48281659?spm1001.2014.3001.5506 和《数据挖掘导论》学习笔记&#xff08;第1-2章&#xff09;_时机性样本_schdut的博客-CSDN博客 第1章 绪论 数据挖掘是一种技术&#xff0c;它将传统的数据分析方法…

【权限提升-Windows提权】-UAC提权之MSF模块和UACME项目-DLL劫持-不带引号服务路径-不安全的服务权限

权限提升基础信息 1、具体有哪些权限需要我们了解掌握的&#xff1f; 后台权限&#xff0c;网站权限&#xff0c;数据库权限&#xff0c;接口权限&#xff0c;系统权限&#xff0c;域控权限等 2、以上常见权限获取方法简要归类说明&#xff1f; 后台权限&#xff1a;SQL注入,数…

【LeetCode】297.二叉树的序列化与反序列化

题目 序列化是将一个数据结构或者对象转换为连续的比特位的操作&#xff0c;进而可以将转换后的数据存储在一个文件或者内存中&#xff0c;同时也可以通过网络传输到另一个计算机环境&#xff0c;采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与反序列化…

04-Apache Directory Studio下载安装(LDAP连接工具)

1、下载 官网下载Apache Directory Studio 注意Apache Directory Studio依赖于jdk&#xff0c;对jdk有环境要求 请下载适配本机的jdk版本的Apache Directory Studio,下图为最新版下载地址 Apache Directory Studio Version 2.0.0-M16 基于 Eclipse 2020-12&#xff0c;最低要…

安防监控/视频汇聚/视频云存储EasyCVR平台v3.3版本AI智能分析网关V3接入教程2.0

TSINGSEE的边缘计算硬件智能分析网关V3内置多种AI算法模型&#xff0c;包括人脸、人体、车辆、车牌、行为分析、烟火、入侵、聚集、安全帽、反光衣等等&#xff0c;可应用在安全生产、通用园区、智慧食安、智慧城管、智慧煤矿等场景中。将网关硬件结合TSINGSEE青犀的视频汇聚/安…

「一体化信息建设」,江苏人社如何完成数据安全管控(建设篇)

2019 年&#xff0c;江苏省人社厅正式启动全省人社一体化信息平台建设项目。省人社一体化信息平台基于全省统一的人社业务标准、规范、流程和数据体系&#xff0c;以群众需求为导向&#xff0c;以省集中建设为重点&#xff0c;以云平台架构为基础&#xff0c;采用人社部 LEAF6.…

百度智能云千帆大模型丨未来人手必备的代码助手

文章目录 1. 前言2. 千帆大模型平台3. 十分友好的功能4. comate代码助手5. 总结 1. 前言 我之前给大家推荐过Poe这个网站&#xff0c;它用的人比较少&#xff0c;但一旦接触后会发现它其实挺强大的。 因为它是一个可以同时支持好几个大模型的在线聚合平台。常用的GPT4&#x…

2.6 PE结构:导出表详细解析

导出表&#xff08;Export Table&#xff09;是Windows可执行文件中的一个结构&#xff0c;记录了可执行文件中某些函数或变量的名称和地址&#xff0c;这些名称和地址可以供其他程序调用或使用。当PE文件执行时Windows装载器将文件装入内存并将导入表中登记的DLL文件一并装入&…

归并排序 Merge Sort

归并排序的基本思想是什么&#xff1f; 采用分治法&#xff08;Divide and Conquer&#xff09;&#xff0c;递归将待排序的数组平均分成两个子数组&#xff0c;直到子数组长度为 0 或 1&#xff0c;这是 分 Divider。再将排序好的两个子数组合并为一个有序数组&#xff0c;这…

WINGREEN 034STN1-01-300-R 传感器模块

WINGREEN 034STN1-01-300-R 是一种传感器模块&#xff0c;通常用于监测和采集各种环境或过程参数的数据。以下是这种类型的传感器模块通常可能具备的一般功能和特点&#xff1a; 传感器接口&#xff1a;模块通常配备用于连接不同类型传感器的接口&#xff0c;如温度传感器、湿度…