PYTHON-Won';是否打印到.java文档?

PYTHON-Won';是否打印到.java文档?,java,python,file,printing,Java,Python,File,Printing,我对python有一个问题。 这是我的密码 每当我选择项目或鹤嘴锄,它打印的很好。下面的任何内容都无法打印。。请帮忙 注意:我还使用了pastebin,因为我发现它最容易阅读。您的实际错误是第62行,如果ItemType==3&ItemStr==1:-它应该以elif开头,否则它会打断您的(非常讨厌的)级联 另一个潜在问题:在所有比较中,即如果ItemType==1&ItemStr==1:,则当您应该使用逻辑and(和)时,您正在使用位and(&) 这是一个重写的版本。它不到长度的一半,由数据

我对python有一个问题。 这是我的密码

每当我选择项目或鹤嘴锄,它打印的很好。下面的任何内容都无法打印。。请帮忙


注意:我还使用了pastebin,因为我发现它最容易阅读。

您的实际错误是第62行,
如果ItemType==3&ItemStr==1:
-它应该以
elif
开头,否则它会打断您的(非常讨厌的)级联

另一个潜在问题:在所有比较中,即
如果ItemType==1&ItemStr==1:
,则当您应该使用逻辑and(
)时,您正在使用位and(
&

这是一个重写的版本。它不到长度的一半,由数据驱动,并且更容易发现不一致之处(您是指材质类型中的“钻石”还是“翡翠”):


你能给出一个最小的、可编译的例子吗?预期的产出究竟是多少?你得到了什么?你尝试过什么?最好提供反对票的理由,让OP知道原因。我强烈建议你学习如何使用Python。他们会让你的生活轻松很多。
class Item(object):
    types = [
        ('Item',    'Item'),
        ('Pickaxe', 'ItemPickaxe'),
        ('Shovel',  'ItemSpade'),
        ('Axe',     'ItemAxe'),
        ('Hoe',     'ItemHoe'),
        ('Sword',   'ItemSword')
    ]
    strengths = [
        ('Diamond', 'EnumToolMaterial.EMERALD'),    # ?? You might want to doublecheck this...
        ('Gold',    'EnumToolMaterial.GOLD'),
        ('Iron',    'EnumToolMaterial.IRON'),
        ('Stone',   'EnumToolMaterial.STONE'),
        ('Wood',    'EnumToolMaterial.WOOD'),
    ]

    javastring = 'public static final {type} {name} = new {type}({id}, {strength}).setItemName("{name}");'

    @classmethod
    def prompt_for_item(cls):
        s = "Please enter your item's name:\n"
        name = raw_input(s).strip()

        types = ["[{}] {}".format(i,n[0]) for i,n in enumerate(cls.types, 1)]
        s = "Please enter item type:\n{}\n".format('\n'.join(types))
        type_ = int(raw_input(s)) - 1

        s = "Please enter item id (unique int):\n"
        id = int(raw_input(s))

        strengths = ["[{}] {}".format(i,n[0]) for i,n in enumerate(cls.strengths, 1)]
        s = "Please enter item strength:\n{}\n".format('\n'.join(strengths))
        strength = int(raw_input(s)) - 1

        return cls(name, type_, id, strength)

    def __init__(self, name, type_, id, strength):
        self.name = name
        self.type = type_
        self.id = id
        self.strength = strength

    def write_to_file(self, fname=None):
        if fname is None:
            fname = '{}.java'.format(self.name)
        with open(fname, 'w') as outf:
            cls = type(self)
            outf.write(
                cls.javastring.format(
                    type = cls.types[self.type][1],
                    name = self.name,
                    id = self.id,
                    strength = cls.strengths[self.strength][1]
                )
            )

def main():
    it = Item.prompt_for_item()
    it.write_to_file()
    print 'File has been written'

if __name__=="__main__":
    main()