找不到语法错误 [英] Can't find the Syntax Error

查看:58
本文介绍了找不到语法错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在编写一个简单的基于文本的 RPG 游戏,我正在尝试让库存系统正常工作.我已经逐字复制了工作代码,但出现语法错误.我不确定我做错了什么,因为它对我来说看起来不错.对不起,新手问题.谢谢!

I'm writing a simple text based RPG game and I'm trying to get the inventory system to work. I've copied verbatim the working code starting from, but I get a Syntax Error. I'm not sure what I'm doing wrong as it looks good to me. Sorry for the newbie question. Thank you!

class Container(object):

        def__init__(self, name):
                self.name = name
                self.inside = {}

    def__iter__(self):
            return iter(self.inside.items())

    def__len__(self):
            return len(self.inside)

    def__contains__(self, item):
            return item.raw in self.inside

    def__getitem__(self, item):
            return self.inside[item.raw]

    def__setitem__(self, item, value):
            self.inside[item.raw] = value
            return self[item]

    def add (self, item, quantity=1):
            if quantity < 0:
                    raise ValueError("Negative quantity.  Use remove() instead.")

            if item in self:
                    self[item].quantity += quantity
                    self[item].recalc()

            else:
                    self[item].quantity -= quantity
                    self[item].recalc()

运行时出现以下错误:

Traceback (most recent call last):
  File "game.py", line 2, in <module>
    from characters.player import *
  File "/home/dave/Projects/rpg-master/characters/player.py", line 4, in <module>
    from items.container import *
  File "/home/dave/Projects/rpg-master/items/container.py", line 4
    def__init__(self, name):
                           ^
SyntaxError: invalid syntax

非常感谢您的帮助.

推荐答案

def 后没有空格:

def__init__(self, name):
    self.name = name
    self.inside = {}

应该

def __init__(self, name):
    self.name = name
    self.inside = {}

等其他类函数.

这篇关于找不到语法错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆