【问题标题】:Trying to call an object fro, within a class [duplicate]试图从一个类中调用一个对象[重复]
【发布时间】:2018-04-02 22:18:58
【问题描述】:

我写了

class Spillebrett:
    def __init__ (self, rader, kolonner):
        self._rader=rader
        self._kolonner=kolonner
        self._rutenett=[[]]
        generasjon=0
        generer()

    def generer(self):
        for i in range(self._rader):
          for j in range(self._kolonner):

但我明白了

NameError: name 'generer' is not defined

它的定义再往下看,我该怎么办?

【问题讨论】:

  • generer 是属于该类的方法。您必须使用以下方式调用它:self.generer()
  • 试试self.generer(),这就是你在类中引用calss方法或属性的方式。
  • @ShikharChauhan 准确地说,self.generer 是对象self 的绑定方法,并且与Spillebrett.generer 不同(如is not)。
  • @timgeb 如果您能在答案中向 OP 解释这一点,那就太好了。

标签: python class object call


【解决方案1】:

请将generer()改为self.generer()

为什么?因为该方法属于该类。

【讨论】:

    猜你喜欢
    • 2021-04-21
    • 2016-07-03
    • 2021-08-14
    • 2021-01-20
    • 1970-01-01
    • 2015-11-01
    • 2014-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多