Pygame Zero(pgzrun)详解(简介、使用方法、坐标系、目录结构、语法参数、安装、实例解释)

Pygame Zero(pgzrun)详解

(简介、使用方法、坐标系、目录结构、语法参数、安装、实例解释)

本文目录:

零、时光宝盒

一、Pygame Zero简介

二、Pygame Zero的编写游戏的一般流程

三、Pygame Zero 的坐标系

四、Pygame Zero项目的目录

五、Pygame Zero的语法参数

六、Pygame Zero常用的固定函数

七、Pygame Zero(pgzrun)安装

八、pygame zero实例(飘动的小精灵)


零、时光宝盒

2ab463de26a541818271efa176656ae6.png

逆境清醒:https://blog.csdn.net/weixin_69553582   

今天是2025年1月1日,

在新的一年里,
愿你心如阳光,明媚不忧伤。
愿你心如月光,恬淡不清冷。
愿你身体健康,快乐无烦恼。
愿你梦里幸福笑,如意直到老。
愿你被时光温柔笼罩,幸运女神偏偏宠着你。
开心、健康、平安、好运、幸福、顺利、有钱、又闲。。。
所求皆如愿,所行皆坦途,
多喜乐,长安宁,愿守护精灵坚定地留在你身旁!!!
愿你的一切美好都会在新的一年发生!!!

虽然我并不算真的认识你们,你们也不知道我是谁,
但这份祝福是发自肺腑,钻石般坚定的!
如果有一天你们知道我,就会明白这一切。

太多假冒我的,甚至我文章边写边被人通过特殊手段潜入我电脑,将我的文章和代码拷贝在其他人那里提前发布,而我这边被通过某种特殊手段强行隔断。。。。。很多事情我没有证据,但我很清楚发生了,所以,我才特别希望同样经历类似这些的你们能够在新的一年过得好一点。

    逆境清醒
2025.1.1 

此文地址:https://blog.csdn.net/weixin_69553582/article/details/144864025

7f8eafc867aa425cab7d368ee0eb4dd8.gif

一、Pygame Zero简介

  Pygame Zero(pgzrun)是一个用于创建简单的2D游戏的Python库。它是基于Pygame库开发的,旨在简化游戏开发的流程,特别适合初学者和快速原型设计。

  Pygame Zero是建立在Pygame库之上的,是一个基于Pygame的简化游戏框架,旨在帮助初学者快速入门游戏开发。它封装了Pygame的一些复杂性,使得开发者可以更快速、更容易地开发游戏,而无需处理Pygame的一些底层细节。Pygame Zero是Python编程语言中的一个模块,提供了一种简化的方式来创建游戏和交互式应用程序。

  对于没有编程经验的人来说。Pygame Zero的目标是通过封装一些常见的游戏开发任务和提供一些简化的API,使游戏开发变得更加容易和有趣。Pygame Zero为初学者提供了一个简单直观的游戏开发环境,使得他们能够快速上手,快速实现自己的游戏创意。同时,对于有经验的开发者,Pygame Zero也提供了一些有用的功能和工具,用于快速原型设计和快速迭代。

Pygame Zero的主要特点:

  1. 简化的绘图:Pygame Zero提供了一些简单的绘图函数,如绘制矩形、圆圈和文本等。这些函数使绘图变得容易,无需了解复杂的Pygame绘图API。

  2. 内置的游戏循环:Pygame Zero自动处理游戏循环,包括事件处理、更新游戏状态和绘制场景等。Pygame Zero会自动创建一个主循环来处理游戏逻辑和渲染。你只需要实现一些回调函数,例如,你可以编写名为update()的函数来处理游戏逻辑,每帧都会被调用。另外,你还可以编写名为draw()的函数来处理渲染,也会每帧被调用。

  3. 简化的输入处理:Pygame Zero处理键盘和鼠标输入,并提供了一些简单的函数来检测按键和鼠标事件。你可以轻松地检测玩家的输入并作出相应的反应。你可以根据需要编写事件处理函数,在用户触发事件时执行相应的操作。

  4. 物理引擎支持:Pygame Zero集成了物理引擎pymunk,使得处理物理碰撞和运动变得更加容易。你可以创建物理对象,设置其属性,然后让它与其他对象交互。

  5. 简化的语法:Pygame Zero通过提供一些简化的语法,使得编写游戏代码更加简单易懂。例如,你可以使用Actor()类来创建可移动的游戏对象,使用.pos属性来获取或设置对象的位置,使用.colliderect()函数来检测对象之间的碰撞等。

二、Pygame Zero的编写游戏的一般流程

使用Pygame Zero编写游戏的一般流程是:

1. 安装:可以使用pip命令来安装Pygame Zero库。在命令行中输入pip install pgzero即可安装。

2. 导入Pygame Zero模块:import pgzrun 或者 from pgzrun import * 

3. 初始化:设置游戏窗口的宽度和高度等参数,例如:`WIDTH = 800; HEIGHT = 600`

4. 在draw()函数中绘制游戏场景,例如绘制背景、角色等。

5. 在update()函数中更新游戏状态,例如检测输入、移动角色等。

6. 调用Pygame Zero的主循环函数:pgzrun.go()

三、Pygame Zero 的坐标系

Pygame Zero 的坐标系以左上角为原点 ( 0, 0 )

四、Pygame Zero项目的目录

Pygame Zero项目的目录一般如下:

Pygame Zero项目

├──music/
│   └── 音乐文件,支持的格式:MP3 (.mp3)、OGG (.ogg)、WAV (.wav)

├── sounds/
│   └── 声音文件,支持的格式:WAV (.wav)、OGG (.ogg)

├── images/
│   └── 图片文件,支持的图片格式:.png、.jpg、.gif

└── python文件

规定的目录说明:

images/ 图片文件目录

是Pygame Zero查找代码中图片的标准默认目录。支持的图片格式:.png、.jpg、.gif

sounds/ 声音文件目录:

是 Pygame Zero 查找声音文件的默认标准目录。

声音文件通常是指短时的音频片段,如音效、声效等,

在与程序文件同一根目录下名为sounds的文件夹放下需要的音乐( WAV (.wav)、OGG (.ogg)格式),

在程序中用

sounds.音乐名(英文且不带后缀名).play()

sounds.音乐名(英文且不带后缀名).play()

效果:只播放一次此音乐

music/ 音乐文件目录:

是 Pygame Zero 查找音乐文件的默认标准目录。

音乐文件通常是指较长时长的音频剪辑,如歌曲、乐曲等,用于背景音乐。

在与程序文件同一根目录下名为music的文件夹放下您想播放的音乐(MP3 (.mp3)、OGG (.ogg)、WAV (.wav))

在程序中用

music.play('音乐名不带后缀名')

music.play('音乐名不带后缀名')

效果:一直重复播放此音乐

五、Pygame Zero的语法参数

5.1、设置窗口的标题

在Pgzero中,用TITLE来设置窗口的标题。需要大写。例如:

TITLE = "逆境清醒编程用法示例pgzrun"  # 设置窗口顶部的标题

5.2、设置窗口的大小

Pgzero中,通过两个常量值(WIDTH和HEGIHT,指场景的宽和高)来确定程序运行窗口的大小。例如:

WIDTH = 300
HEIGHT = 300

5.3、创建角色

Pgzero中生成一个游戏角色十分简单,只需一行代码即可。

Actor类是Pgzero库提供的角色类,调用该类的构造方法并传入角色图片和位置便可生成一个角色对象。

<变量> =Actor("str", (x, y))    #生成一个游戏角色,导入一个名为str图片

Actor类的构造方法有两个基本参数:

  • 第一个参数是角色的图片文件名,角色图片可以调用的图片格式是.jpg、.png、.gif,调用图片文件时无需扩展名,
  • 第二个参数是角色的初始位置坐标。

例如:

alien = Actor("jingling00.png",(100,100))

4、内置对象

Pgzreo提供了很多的内置对象,以便进行各项操作。

screen对象表示您的游戏屏幕。

它可让您轻松地将图像绘制到屏幕上(“blit”它们)。主要用来在程序运行窗口进行绘制图形和图像及文字信息等,在游戏编程中经常会用到screen对象提供的很多的绘制方法。

Screen类内置对象

方法

作用

1

surface

表示屏幕缓冲区的原始 Pygame 表面。您可以将其用于高级图形操作。

2

clear()

将屏幕重置为黑色。

3

fill((redgreenblue)

fill((红、绿、蓝))

用纯色填充屏幕。

4

blit(image(lefttop))

将图像绘制到给定位置的屏幕上。

blit(图像,(左,上))

将图像绘制到屏幕上的给定位置。

blit()接受Surface或字符串作为其图像参数。

如果image是str,则将从images/目录加载命名的image。

5

draw.line(startend(rgb))

draw.line(开始、结束、(红、绿、蓝))

从头到尾画一条线。

6

draw.circle(posradius(rgb))

draw.circle(位置、半径、(红、绿、蓝))

绘制圆的轮廓。

7

draw.filled_circle(posradius(rgb)

draw.filled_circle(位置、半径、(红、绿、蓝))

绘制一个实心圆。

8

draw.rect(rect(rgb))

draw.rect(矩形,(红、绿、蓝))

绘制矩形的轮廓。

9

draw.filled_rect(rect(rgb)

draw.filled_rect(矩形,(红、绿、蓝))

绘制一个填充矩形。

10

draw.text(text, [pos, ]**kwargs)

draw.text(文本, [pos, ]**kwargs)

绘制文本。

11

raw.textbox(textrect**kwargs)

draw.textbox(文本、矩形、**kwargs)

绘制文本,调整大小以填充给定的 Rect。

六、Pygame Zero常用的固定函数

Pygame Zero定义了一些其他固定名称的函数(约定好的函数),用于处理特定的游戏事件或执行其他功能。你可以根据需要在你的代码中实现这些函数,以便响应相应的事件。

以下是一些常用的固定函数名称:

固定函数

方法

作用

1

draw():

Pgzero库自带函数,它可以显示各种图形或图像,它是Pygame、Pygame Zero库约定好的函数,这个函数用于绘制游戏场景。

可以在这个函数中使用 Pygame 的绘图函数来绘制图像、文本和等,并将它们显示在屏幕上。

程序运行以后,会被自动执行。

所有绘制角色的代码,都需要写在这个函数中。

用户可以在程序中将自己的代码定义在draw( )函数内。

2

update()

update()函数是Pygame zero库自带的函数,每秒自动运行60次用以不断更新游戏,程序运行以后,会被自动执行。

这个函数用于更新游戏逻辑和状态。

可以在这个函数中实现游戏中各种元素的移动、碰撞检测、状态变化等更新操作。

所有更新游戏场景、游戏角色的代码,所有对角色对象操作的代码都要写在update()函数中。

3

on_mouse_down(pos, button)

这个函数在用户按下鼠标按钮时被调用。你可以检测按钮的位置,然后执行相应的操作,如捕获点击事件、进行拖动等。button参数表示释放的鼠标按钮的名称,pos参数表示释放发生的位置。

4

on_mouse_up(pos, button)

这个函数在用户释放鼠标按钮时被调用。

可以根据需要对鼠标松开事件做出响应,如停止拖动等。

button参数表示释放的鼠标按钮的名称,

pos参数表示释放发生的位置。

5

on_mouse_move(pos, rel, buttons)

当鼠标移动时调用。

pos参数表示当前鼠标位置,

rel参数表示相对于上次移动的位置变化,

buttons参数表示当前按下的鼠标按钮的状态。

6

on_key_down(key)

这个函数在用户按下某个键时被调用。你可以根据不同的键来执行相应的操作,例如移动角色、触发事件等。key参数表示被按下的键的名称。

7

on_key_up(key)

这个函数在用户释放某个键时被调用。你可以根据需要对键释放事件作出响应,例如停止角色移动等。key参数表示被按下的键的名称。

8

on_quit()

当关闭游戏窗口时调用。

 

七、pygame zero安装验证:

7.1、首先,必须先安装 pygame

Pip install pygame

7.2、最后,安装pygame zero:

pip install pgzero

7.3、验证

首先,创建一个名为 intro.py的空白python文件

在命令行通过运行

pgzrun intro.py

运行结果:

弹出一个黑色的空白窗口

说明pygame zero安装成功

八、pygame zero实例(飘动的小精灵)

简单例子,一个小精灵在空中飘动。

先看效果图(gif):

8.1、安装python和相关的库

先安装好python和相关的库(pygame、pygame zero)

Pip install pygame
pip install pgzero

8.2、建立python文件njqx.py

新建立python文件,文件名:njqx.py(你可以换成你喜欢的文件名.py)

8.3、导入库

import pgzrun

8.4、下载保存好素材

准备好素材,保存到指定的目录中,

本例子中,如果你想得到和我一样的效果,

下载我提供的素材(素材版权是我的),

保存图片时所起的名字一定要按我下文中所列出的一样,

同时保存图片的位置也不能改变任何。

在njqx.py所在的位置,新建立一个 images 目录,

素材1:

将素材1保存在images目录中,名字为:njqx00_bg.png

素材2:

将素材2保存在images目录中,名字为:njqx00.png

8.5、项目的目录

飘动的小精灵目录结构

├── images/
│   └── njqx00_bg.png
│   └── njqx00.png

└── njqx.py

8.6、初始化

在njqx.py文件中新增代码如下:

"""
=================================================
@Project ->Adversity Awake python游戏系列
@类别     : pygame->pgzrun
@Author  : 逆境清醒
@Date    : 2025/1/1
@Desc    :https://blog.csdn.net/weixin_69553582
原文链接:https://blog.csdn.net/weixin_69553582/article/details/144864025
=================================================
"""
TITLE = "逆境清醒编程用法示例pgzrun"
jingling = Actor('njqx00')
jingling.pos = 150, 110
WIDTH = 350
HEIGHT = jingling.height + 80

8.7、绘制场景

在njqx.py文件中新增代码如下:

def draw():screen.clear()screen.blit("njqx00_bg.png", (0, 0))  jingling.draw()

8.8、设定更新内容

在njqx.py文件中新增代码如下:

def update():jingling.left += 2if jingling.left > WIDTH:jingling.right = 0

8.9、增加主循环

pgzrun.go()

8.10、运行代码

运行njqx.py

效果如下:

8.11、完整代码

import pgzrun
import time
"""
=================================================
@Project ->Adversity Awake python游戏系列
@类别     : pygame->pgzrun
@Author  : 逆境清醒
@Date    : 2025/1/1
@Desc    :https://blog.csdn.net/weixin_69553582
原文链接:https://blog.csdn.net/weixin_69553582/article/details/144864025
=================================================
"""
TITLE = "逆境清醒编程用法示例pgzrun"
jingling = Actor('njqx00')
jingling.pos = 150, 110
WIDTH = 350
HEIGHT = jingling.height + 80def draw():screen.clear()screen.blit("njqx00_bg.png", (0, 0)) jingling.draw()def update():jingling.left += 2if jingling.left > WIDTH:jingling.right = 0pgzrun.go()


推荐阅读:

27d5b50d93a089da35ee1a28905f9719.jpeg​​​​

c64d8b4d0b6842ebe1196c0b1e3fba51.jpeg​​​​

a136a43cd0015088d4ce37b1bb653533.jpeg​​​​

给照片换底色(python+opencv)猫十二分类基于大模型的虚拟数字人__虚拟主播实例

0f92b28e915ca3cc26cfaaf47c5fc62d.jpeg

5d2b51be3e7e932be95355088e17d524.jpeg

3cf3fe3c1a186bfcbf12d4755b8950ae.jpeg

计算机视觉__基本图像操作(显示、读取、保存)直方图(颜色直方图、灰度直方图)直方图均衡化(调节图像亮度、对比度)

849b7a72434213407c862c8f8e071a22.png

9412a31659ba6db83d806c3f354dd1c0.png

fb29a865f75af8352dca5e3d56a09004.png

语音识别实战(python代码)(一)

 人工智能基础篇

 计算机视觉基础__图像特征

逆境清醒

637c349e8206c0651d1f2751ba128912.png

 matplotlib 自带绘图样式效果展示速查(28种,全)

PyCharm 社区版(2024.2.3)安装、配置、创建项目

pycharm汉化插件无法使用也无法卸载的解决方法

ec9793633e16de7b52fbf0b74ecfa2f3.png

Three.js实例详解___旋转的精灵女孩(附完整代码和资源)(一)

开源数据科学平台Anaconda简介

最新版本Anaconda 2024.06-1安装设置

6e420cca6a1313b93948785f689f5723.png

1da3f182e081ad8f3cfcf53013909b8b.png

ca733c1a99c6457a762d0e503855ce79.png

立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦

 Python 3D可视化(一)

让你的作品更出色——词云Word Cloud的制作方法(基于python,WordCloud,stylecloud)

f92dfeb72ec683025a63db2fe8a26492.png

1b2a866ebb074a1e5859dad42c435d5c.jpeg

8207b63755bf37b10807a046080f14df.png

 python Format()函数的用法___实例详解(一)(全,例多)___各种格式化替换,format对齐打印

 用代码写出浪漫__合集(python、matplotlib、Matlab、java绘制爱心、玫瑰花、前端特效玫瑰、爱心)

python爱心源代码集锦(18款)

b97d56fe7e3ce6234cb182ad86fef4ed.jpeg

6871f222e7db3f8ce83336ad50311c3a.png

b89ed1147e8a76e6c64b812d65e8f2ef.png

 Python中Print()函数的用法___实例详解(全,例多)

 Python函数方法实例详解全集(更新中...)

 《 Python List 列表全实例详解系列(一)》__系列总目录、列表概念

7090a17485b11d9da69e37e5756c6910.png

50313523c8c19f29270fb1110fe66ae9.png

用代码过中秋,python海龟月饼你要不要尝一口?

 python练习题目录

4c77c7a60782637db9e27b3deec7abee.png

c397ed3a22c7885194eb92b5b3883322.png

a18fbd27f15eaa98f0bb5a4fed8cbd8b.png

草莓熊python turtle绘图(风车版)附源代码

 ​草莓熊python turtle绘图代码(玫瑰花版)附源代码

 ​草莓熊python绘图(春节版,圣诞倒数雪花版)附源代码

36e2af3bf474c59b9c430b223417793b.png

542dbf91cfafa23e1ccdee94a7b22397.png

 巴斯光年python turtle绘图__附源代码

皮卡丘python turtle海龟绘图(电力球版)附源代码

【中秋月饼系列】2024年立体月饼新鲜出炉----python画月饼(1)附完整代码

逆境清醒

68b0f4704053ab870c16bb4e37897d63.png​​​​​​​

25ff4b8d741f0942c50dd96b7e866386.jpeg​​​​​​​

59bb0955631256520f0edd17f8304669.jpeg​​​​​​​

 Node.js (v19.1.0npm 8.19.3) vue.js安装配置教程(超详细)

 色彩颜色对照表(一)(16进制、RGB、CMYK、HSV、中英文名)

2024年12月多家权威机构____编程语言排行榜__薪酬状况

7dda70990181a20a430cc7b13dc9d8aa.png

a1fea2de0187913a4cdb18473c512c55.png​​​​​​​

96e1df3760ce3017026da2d1de069869.png​​​​​​​

 手机屏幕坏了____怎么把里面的资料导出(18种方法)

【CSDN云IDE】个人使用体验和建议(含超详细操作教程)(python、webGL方向)

 查看jdk安装路径,在windows上实现多个java jdk的共存解决办法,安装java19后终端乱码的解决

逆境清醒

用代码画万圣节南瓜(python,MATLAB,html css)

CSS3 动画相关属性实例大全

CSS @规则(At-rules)系列详解

fa753f11d26d967646a85b78b53dc703.png​​​​​​​

vue3 项目搭建教程(基于create-vue,vite,Vite + Vue)

圣诞节系列代码专辑(目录)

Markdown 语法详解大全(超级版)

4290a52c20eee861ee159e17659342f5.png​​​​​​​

b126b976989a1e4f1ae40867407e8f4d.png​​​​​​​

15f065b7e46b238db1e7382f70fd7076.png​​​​​​​

2023年春节祝福第二弹——送你一只守护兔,让它温暖每一个你【html5 css3】画会动的小兔子,炫酷充电,字体特

 别具一格,原创唯美浪漫情人节表白专辑,(复制就可用)(html5,css3,svg)表白爱心代码(4套)

SVG实例详解系列(一)(svg概述、位图和矢量图区别(图解)、SVG应用实例)

f3a00b9bf85e8d36c21d8e9785f43a53.png​​​​​​​

1f143789d9652fd35c1fabf11b6f149c.png​​​​​​​

2c8047a9f87aa22a8abe57ad0081b1d9.png​​​​​​​

【程序人生】卡塔尔世界杯元素python海龟绘图(附源代码),世界杯主题前端特效5个(附源码)HTML+CSS+svg绘制精美彩色闪灯圣诞树,HTML+CSS+Js实时新年时间倒数倒计时(附源代码)

 2023春节祝福系列第一弹(上)(放飞祈福孔明灯,祝福大家身体健康)(附完整源代码及资源免费下载)

逆境清醒

a01e7c6663c27936b3c174265db14012.png​​​​​​​

6d12eed561af36157625a07b771f9b0b.png​​​​​​​

af9dcebc4110cf5b9a012a3ef7d268fe.png​​​​​​​

 tomcat11、tomcat10 安装配置(Windows环境)(详细图文)

 Tomcat端口配置(详细)

 Tomcat 启动闪退问题解决集(八大类详细)

逆境清醒

信息系统项目管理师试题

云计算

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

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

相关文章

Java jni调用nnom rnn-denoise 降噪

介绍&#xff1a;https://github.com/majianjia/nnom/blob/master/examples/rnn-denoise/README_CN.md 默认提供了一个wav的例子 #include <stdint.h> #include <stdlib.h> #include <stdio.h> #include <math.h> #include <string.h>#include …

图像处理-Ch7-小波函数

个人博客&#xff01;无广告观看&#xff0c;因为这节内容太多了&#xff0c;有点放不下&#xff0c;分了三节 文章目录 多分辨率展开(Multi-resolution Expansions)序列展开(Series Expansions)尺度函数(Scaling Function)例&#xff1a;哈尔尺度函数(Haar scaling func)多分…

solr9.7 单机安装教程

1.环境要求:jdk11以上 2.下载wget https://dlcdn.apache.org/solr/solr/9.7.0/solr-9.7.0.tgz 3.解压 4.修改solr.in.sh配置 5.启动命令 bin/solr start 6.创建core bin/solr create -c <core名称> 注意:用solr ui界面创建&#xff0c;会提示找不到solrconfig.xml和m…

Python爬虫(一)- Requests 安装与基本使用教程

文章目录 前言一、简介及安装1. 简介2. 安装 Requests2.1 安装2.2 检查安装是否成功 二、使用 Requests 发送 HTTP 请求1. 发送 GET 请求2. 发送 POST 请求3. 发送 PUT 请求4. 发送 DELETE 请求5. 发送 HEAD 请求6. 发送 OPTIONS 请求 三、传递参数1. GET 请求传递 URL 参数1.1…

使用exe4j将jar转成exe、java打包exe

1、maven打包 需要配置以下插件&#xff0c;注意skip为false 插件配置中设置 <skip>true</skip> 时&#xff0c;实际上是告诉 Maven 在构建过程中跳过 spring-boot-maven-plugin 插件的执行。也就是说&#xff0c;Maven 在打包时不会将项目打包成可执行的 JAR 文…

基本算法——分类

目录 创建项目 导入依赖 加载数据 特征选择 学习算法 对新数据分类 评估与预测误差度量 混淆矩阵 通过模型的预测结果生成 ROC 曲线数据 选择分类算法 完整代码 结论 创建项目 首先创建spring boot项目&#xff0c;我这里用的JDK8&#xff0c;springboot2.7.6&…

Debian 系统中解决中文日志乱码问题

在 Debian 系统中&#xff0c;打印中文日志时经常会遇到乱码问题。这通常是因为系统的 locale 设置不正确&#xff0c;或者缺少所需的字体支持。本文将详细介绍如何解决此类问题&#xff0c;以确保你的 Debian 系统能够正确显示和处理中文字符。 一 乱码问题 问题描述当你尝试…

【电源专题】LDO关键DC参数——效率

在讲到电源的效率方面,很多时候网上最经常看到的是“LDO的效率低,开关电源效率高,所以LDO需要更大的散热器来帮助耗散热能”。 比如如下所示为网上找到的一些总结,一般也是大家所熟知的: 是的,这描述在一定的使用条件下是正确对的,但并不完全对,因为不同的工作…

传统听写与大模型听写比对

在快节奏的现代生活中&#xff0c;听写技能仍然是学习语言和提升认知能力的重要环节。然而&#xff0c;传统的听写练习往往枯燥乏味&#xff0c;且效率不高。现在&#xff0c;随着人工智能技术的发展&#xff0c;大模型听写工具的问世&#xff0c;为传统听写带来了革命性的变革…

Spring Bean required a single bean, but 2 were found,发现多个 Bean

问题复现 在使用 Autowired 时&#xff0c;不管你是菜鸟级还是专家级的 Spring 使用者&#xff0c;都应该制造或者遭遇过类似的错误&#xff1a; required a single bean, but 2 were found 顾名思义&#xff0c;我们仅需要一个 Bean&#xff0c;但实际却提供了 2 个&#xff…

李宏毅机器学习笔记-Transformer

目录 1. Seq2seq 2. encoder Transformer 中的 Block 结构 3. Decoder 4.Encoder和Decoder间的信息传递 5.Training 6.Tips 1. Seq2seq Transformer 是一个seq2seq的model。Seq2seq指的是input是一个序列&#xff0c;输出也是一个序列&#xff0c;输出的长度是由机器自己…

基于Docker的ETCD分布式集群

目录 1. 说明 2. 配置表 3. 步骤 3.1 放行端口 3.2 docker-compose 文件 3.3 部署到3台服务器 3.4 相关命令 4. 参考 1. 说明 - 以docker容器方式实现ETCD分布式集群&#xff0c;为其他项目提供支持&#xff0c;经过反复试验成功部署(网上资料大都过期或部署失败)。 -…

LeetCode 力扣 热题 100道(二十七)除自身以外数组的乘积(C++)

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂…

DSMM数据安全能力成熟度评估--学习笔记(1)

目录 DSMM是什么&#xff1f; 1、能力成熟度等级评估流程 2、DSMM评估方式&#xff1f; 3、能力成熟度模型使用方法 4、 安全能力维度 4.1 能力构成 4.2 组织建设 4.3 制度流程 4.4 技术工具 4.5 人员能力 5、 能力成熟度等级维度 6、 数据安全过程维度 数据安全能…

【Go】:Sentinel 动态数据源配置指南

前言 在现代微服务架构中&#xff0c;流量控制是确保系统高可用性和稳定性的关键。Sentinel 是一款由阿里巴巴开源的流量控制组件&#xff0c;它不仅支持熔断降级和流量整形&#xff0c;还能通过动态数据源&#xff08;如本地文件或 Nacos&#xff09;加载规则&#xff0c;从而…

STM32学习之通信协议1 USART

时钟特性&#xff0c;比如发送一个波形高电平&#xff0c;然后低电平&#xff0c;接收方怎么知道是1、0还是1、1、0、0 &#xff1f; 这就需要有一个时钟信号来告诉接收方什么时候需要采集数据。时钟特性分为同步和异步。 I2C和SPI有单独的时钟线&#xff0c;所以它们是同步的&…

Arduino 小白的 DIY 空气质量检测仪(3)- TVOC模块、CO2模块

接上回 逐个分析 m_TVOC.h #include <Arduino.h>#include <SoftI2C.h>#include "DFRobot_SGP40.h"// TVOC指数 // 型号&#xff1a;sgp_40 // 接口&#xff1a;VCC->VCC(5V)、GND->GND、SDA->D6、SCL->D7、WAK->GND // 协议&#xff1…

主数据驱动的数据治理框架

目录 数据资产分类 数据治理的重要性 数据质量框架的4个方面 数据治理的核心是加强对数据资产的管控,通过深化数据服务,持续创造价值。数据治 理是在数据资产价值创造的过程中,治理团队对数据资产管理的评价、指导、控制,如下图所示。 数据资产分类 数据资产划分成为主数据…

【大模型实战篇】LLaMA Factory微调ChatGLM-4-9B模型

1. 背景介绍 虽然现在大模型微调的文章很多&#xff0c;但纸上得来终觉浅&#xff0c;大模型微调的体感还是需要自己亲自上手实操过&#xff0c;才能有一些自己的感悟和直觉。这次我们选择使用llama_factory来微调chatglm-4-9B大模型。 之前微调我们是用两块3090GPU显卡&…

AnnotationConfigApplicationContext流程看实例化的beanPostProcessor

接上一篇https://blog.csdn.net/qq_26437925/article/details/144865082 探究一下beanPostProcessors怎么加进来的 目录 首先register(annotatedClasses);后添加了重要的beanDefinition: ConfigurationClassPostProcessorinvokeBeanFactoryPostProcessors(beanFactory);执行后…