如何在 PyGame 中初始化所有导入的模块

Posted 坚果的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在 PyGame 中初始化所有导入的模块相关的知识,希望对你有一定的参考价值。

14天学习训练营导师课程:
李宁《Python Pygame游戏开发入门与实战》
李宁《计算机视觉OpenCV Python项目实战》1
李宁《计算机视觉OpenCV Python项目实战》2
李宁《计算机视觉OpenCV Python项目实战》3

如何在 PyGame 中初始化所有导入的模块?

PyGame 是专为游戏开发而设计的 Python 库。PyGame 建立在SDL库之上,因此它提供了用 Python 开发游戏的全部功能。Pygame 有很多模块来执行它的操作,在使用这些模块之前,必须先对它们进行初始化。所有模块都可以单独初始化或一次初始化一个。这篇文章描述了如何一次初始化所有导入的模块。

使用的方法:

  • pygame.init() – 初始化所有模块。它不带任何参数并返回一个元组 (numpass,numfail),它指示成功初始化的模块数和失败的模块数。

  • pygame.get_init() – 此方法用于检查 pygame 模块是否已初始化。

**示例 1:**此示例初始化所有 pygame 模块并打印成功初始化的模块数。

# importing the library
import pygame
 
# initializing all the imported
# pygame modules
(numpass,numfail) = pygame.init()
 
# printing the number of modules
# initialized successfully
print('Number of modules initialized successfully:',
      numpass)

**示例 2:**此示例使用 pygame.get_init() 函数来检查 pygame 模块是否已初始化。

# importing the library
import pygame

# initializing the modules
pygame.init()

# checking the initialization
is_initialized = pygame.get_init()

# printing the result
print('Is pygame modules initialized:',
	is_initialized)

最后给大家附上

在 pygame 窗口上显示文本有 7 个基本步骤:

  • 使用 pygame 的 display.set_mode() 方法创建一个显示表面对象。
  • 使用 pygame 的 font.Font() 方法创建一个 Font 对象。
  • 使用pygame字体对象的render()方法,创建一个Text表面对象iesurface对象,上面绘制了Text。
  • 使用pygame文本表面对象的get_rect()方法为文本表面对象创建一个矩形对象。
  • 通过设置pygame矩形对象的center属性的值来设置矩形对象的位置。
  • 使用 pygame 显示表面对象的 blit() 方法将文本表面对象复制到显示表面对象。
  • 使用 pygame 的 display.update() 方法在 pygame 窗口上显示显示表面对象。
# import pygame module in this program
import pygame

# activate the pygame library
# initiate pygame and give permission
# to use pygame's functionality.
pygame.init()

# define the RGB value for white,
# green, blue colour .
white = (255, 255, 255)
green = (0, 255, 0)
blue = (0, 0, 128)

# assigning values to X and Y variable
X = 400
Y = 400

# create the display surface object
# of specific dimension..e(X, Y).
display_surface = pygame.display.set_mode((X, Y))

# set the pygame window name
pygame.display.set_caption('坚果show')

# create a font object.
# 1st parameter is the font file
# which is present in pygame.
# 2nd parameter is size of the font
font = pygame.font.Font('freesansbold.ttf', 32)

# create a text surface object,
# on which text is drawn on it.
text = font.render('坚果', True, green, blue)

# create a rectangular object for the
# text surface object
textRect = text.get_rect()

# set the center of the rectangular object.
textRect.center = (X // 2, Y // 2)

# infinite loop
while True:

	# completely fill the surface object
	# with white color
	display_surface.fill(white)

	# copying the text surface object
	# to the display surface object
	# at the center coordinate.
	display_surface.blit(text, textRect)

	# iterate over the list of Event objects
	# that was returned by pygame.event.get() method.
	for event in pygame.event.get():

		# if event object type is QUIT
		# then quitting the pygame
		# and program both.
		if event.type == pygame.QUIT:

			# deactivates the pygame library
			pygame.quit()

			# quit the program.
			quit()

		# Draws the surface object to the screen.
		pygame.display.update()

运行即可。

以上是关于如何在 PyGame 中初始化所有导入的模块的主要内容,如果未能解决你的问题,请参考以下文章

PyGame:Python 游戏编程入门-1

PyGame:Python 游戏编程入门-1

PyGame:Python 游戏编程入门-1

飞机大战小游戏

如何在pygame中制作具有透明背景的表面

pygame-飞机大战1.0(步骤+窗口无响应问题)