【问题标题】:Syntax error, "except pygame.error"语法错误,“pygame.error 除外”
【发布时间】:2015-04-30 17:46:50
【问题描述】:

我是一个 python 和 pygame 菜鸟,查找了一个将精灵加载到我的游戏中的教程,我收到这行代码的语法错误

    except pygame.error, message:
                   ^
    SyntaxError: invalid syntax

这是整个代码块:

def load_image(self, image_name):

    try:
        image = pygame.image.load(image_name)

    except pygame.error, message:

        print "Cannot load image: " + image_name
        raise SystemExit, message

    return image.convert_alpha()

我没有检查教程是否适用于python 3.4.2,语法是否改变了?

或者我的代码还有其他问题吗?

【问题讨论】:

  • 那是python2的语法

标签: python pygame python-3.4 except


【解决方案1】:

你必须在python3和raise SystemExit(message)中使用as message

def load_image(self, image_name):  
    try:
        image = pygame.image.load(image_name)    
    except pygame.error as message:   
        print("Cannot load image: " + image_name)
        raise SystemExit(message)    
    return image.convert_alpha()

另外,printfunction 中的 python3,所以你需要括号。

【讨论】:

  • 不用担心,如果您正在学习 python2 教程,可能需要进行很多更改
  • 我现在在调试时注意到了。
【解决方案2】:

except pygame.error, message: 仅在 Python 2 中有效。在 Python 3 中,您必须改为:

except pygame.error as message:

【讨论】:

    猜你喜欢
    • 2015-12-03
    • 2018-08-03
    • 1970-01-01
    • 2020-11-13
    • 2015-09-09
    • 1970-01-01
    • 2018-03-01
    • 2019-12-09
    • 2016-05-30
    相关资源
    最近更新 更多