语法错误:每次将数组作为参数放入__init__时语法无效

时间:2014-04-27 21:26:14

标签: python arrays init

例如,这种方法:

import pygame
import mapas

class ContenedoresPorCapa():

    def __init__(self, layers[]):
        self.mapasCapas = len(self.mapas.capas)
        for i in range(mapasCapas):
            return layers[i]

1 个答案:

答案 0 :(得分:3)

您不需要参数列表中的[]

import pygame
import mapas

class ContenedoresPorCapa:
    def __init__(self, layers):
        self.mapasCapas = len(self.mapas.capas)
        for i in range(mapasCapas):
            return layers[i]

另外,请注意来自return类(构造函数)方法的__init__值是没有意义的(并且会生成运行时TypeError,正如AOU winiचhaudhary所指出的那样。)

同样,类定义末尾的()也是多余的。

此外,这个for循环只会迭代一次,然后立即返回:

for i in range(mapasCapas):
    return layers[i]

除非您描述您的目标,否则似乎无法向您提供任何进一步的指导(除了强烈建议您阅读http://learnpythonthehardway.org之类的内容)。