繁体   English   中英

Python 外星人入侵问题速成班

[英]Python Crash Course Alien Invasion issue

这是关于“Python Crash Course 2nd Edition”一书的。

在完成第 12 章中的“将飞船绘制到屏幕上”部分后,我得到的是黑屏,而不是灰色屏幕,并且在运行 alien_invasion.py 时我没有看到飞船出现。 我已尝试为该步骤运行 Matthes 的可下载资源文件,但我仍然遇到黑屏。 我正在从 Sublime 文本运行这些 .py 文件,但尝试使用终端运行它们(我收到缩进错误)和 python IDLE 运行它们(给我一个 pygame 模块未找到错误,虽然我知道 pygame 已安装并找到崇高)。

以下是游戏代码,如果您有船舶图像,则不应在屏幕底部显示灰色背景和船舶:

import sys

import pygame

from settings import Settings
from ship import Ship

class AlienInvasion:
    """Overall class to manage game assets and behavior."""

    def __init__(self):

        """Initialize the game, and create game resources."""
        pygame.init()
        self.settings = Settings()

        self.screen = pygame.display.set_mode(
            (self.settings.screen_width, self.settings.screen_height))

        pygame.display.set_caption("Alien Invasion")

        self.ship = Ship(self)

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

            # Redraw the screen during each pass through the loop.
            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()

我使用的是 Mac OS 版本 10.14.6。

这个问题的任何解决方案,或者我应该编写/运行这些游戏模块的更好的做法或程序?

任何拥有成功安装 pygame 和/或让 alien_invasion 工作的 Mac 的人?

对我的 reddit 帖子的一个回复说他们在 Mac OS 上也有类似的问题但是当他们在 linux 上尝试时它工作正常......

除了在单独的分区上安装 linux 之类的东西之外,Mac 用户还有其他选择吗?

谢谢你的帮助!

在 Eric Matthes 的 github 上找到了解决方案。 Uff da, pygame is not stable on python 3.8.2 yet...I needed to install the dev version of pygame to run with python 3.8.2.

来自 Eric 的 github:

Pygame 的稳定版本尚未更新为与 Python 3.8 一起使用。 但是,最近有一个与 Python 3.8 配合使用的开发版本。 要安装它,请运行以下命令:

$ python -m pip install pygame==2.0.0.dev6

您应该使用与在您的系统上运行 Python 终端 session 相同的命令,可能是 python、python3、py、python3.8 或其他东西

如果您在 macOS 上运行 Pygame 时遇到任何问题,此版本的 Pygame 也应该解决这些问题。

我有同样的问题,黑屏,没有船。 对我来说解决这个问题的是,在设置下,使用高度和宽度。 我是这方面的新手,但我发现当我将船居中而不是底部中心时,船几乎没有出现在底部。 最终,我能够将它置于屏幕底部的中心。

我遇到了这个问题,黑屏之后立即关闭。 该代码在文件夹“images/ship.bmp”中有船。 确保目的地准确无误。 我的位置略有不同,因为我有一个书的项目文件夹。

我的是“Python Crash Course/Alien Invasion/images/ship.bmp”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM