IndentationError, но он не смешивает табуляции и пробелы - PullRequest
1 голос
/ 05 августа 2020

Когда я пытаюсь запустить свой сценарий, он настаивает на том, что в строке 10 есть ошибка IndentationError, строка def init (self):. Поискав его, я попробовал некоторые из распространенных исправлений, которые видел, проверяя, не перепутаны ли табуляции и пробелы, убедившись, что циклы правильно структурированы, но ничего не работает!

import sys
import pygame

from settings import Settings
from ship import Ship

class AlienInvasion:
  """Overall game assets and behavior"""
    
    def __init__(self):
        """Initialize the game, and create game resources"""
        pygame.init()
        
        self.settings = Settings()pi
        self.screen = pygame.display.set_mode((self.settings.screen_width, self.settings.screen_height))

        pygame.display.set_caption("Alien Invasion")

        self.ship = Ship(self)

        # Set the background
        self.bg_color = (230, 230, 230)

    def run_game(self):
        """Start the main loop for the game"""
        while True:
            # Watch for keyboard and mouse events.
            for event in pygame.event.get():
                if event.type == pygame.QUIT:
                    sys.exit()

                # Redraw the screen during each pass through the pass
                self.screen.fill(self.settings.bg_color)
                self.ship.blitme()

            # Make the most recently drawn screen visible
            pygame.display.flip()

if __name__ == '__main__':
    # Make a game instance, and run the game
    ai = AlienInvasion()
    ai.run_game()

Если кто может сказать мне, что происходит, что было бы оценено. Попробовать Python так поздно в моей жизни программирования - дурацкая задача.

1 Ответ

2 голосов
/ 05 августа 2020

Это:

class AlienInvasion:
  """Overall game assets and behavior"""

Должно быть так:

class AlienInvasion:
    """Overall game assets and behavior"""

Чтобы оно соответствовало следующему определению:

    def __init__(self):
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...