Что делают «.subsurface ()», «.convert_alpha ()» и «%»?

Я пытаюсь изучить Pygame, и в учебнике, которому я следую, есть раздел, объясняющий, как анимировать спрайты. Это дает мне спрайт лист, который имеет 8 изображений размером 128x128 каждое, а весь лист размером 1024x128.

Затем он представляет следующий код:

#! /usr/bin/env_python
import pygame, sys
from pygame.local import *

pygame.init()

ZONE = pygame.display.set_mode((400,300))

pygame.display.set_caption("Game Zone")

RED = (255,0,0)
clock = pygame.time.Clock()

counter = 0
sprites = []

sheet = pygame.image.load("spritesheet.gif").convert_alpha()
width = sheet.get_width()

for i in range(int(width/128)):
    sprites.append(sheet.subsurface(i*128,0,128,128)) 

while True:
    pygame.display.update()

    ZONE.fill(RED)
    ZONE.blit(sprites[counter],(10,10))

    counter = (counter + 1) % 8

    clock.tick(16) 

    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit() 

Урок очень расплывчат в отношении того, что делают эти строки, поэтому мне интересно:

Что значитsheet.subsurface() делать? И что означают эти четыре параметра? (Я считаю, что третье и четвертое относятся к ширине и высоте отдельных изображений.)Что значит.convert_alpha() делать? В учебнике говорится, что он «сохраняет прозрачность», но мне это показалось странным, поскольку я уже использовал изображения с прозрачным фоном, и никому из них не требовалось такое преобразование.Что значит% делать? я уже знаю, что/ обозначает разделение, но учебник никогда не объяснял%.

Ответы на вопрос(2)

Ваш ответ на вопрос