2016-02-22 3 views
0

У меня есть класс с несколькими функциями. Некоторые функции внутри класса связаны таким образом.Название Подфункция имени в классе

class class1(): 
    ... init etc... 
    def function1(inputs): 
    do something 
    return(output1) 


    def function2(inputs): 
     returnvals = function1(some_inputs) 
     do something else 
     return(output2) 

когда я вызвать функцию 2 из сценария он дает ошибку: NameError: name 'function1' is not defined

Я также попытался:

class class1(): 
    ... init etc... 
    def function1(inputs): 
     do something 
     return(output1) 

    def function2(inputs): 
     returnvals = class1.function1(some_inputs) 
     do something else 
     return(output2) 

Но даже, чем я получаю ту же ошибку ... Как я почини это.

+1

Возможно, вы имели в виду 'self.function1 (...)'? –

+0

Нет, я не это имел в виду. Но я попробовал, и это тоже не работает ... –

+0

Правильно открепите свой код. Невозможно (по крайней мере для меня) рассказать, что происходит –

ответ

0

Оке у меня есть (безобразно?) Временный Фикс ... Что работает до сих пор Что рабочий метод сейчас:

class class1(): 
    ... init etc... 
    def function1(inputs): 
     do something 
     return(output1) 

    def function2(inputs): 
     temp = class1(some inputs) 
     returnval = temp.function1() 
     do something else 
     return(output2) 

На мой взгляд, это некрасиво решение, так что если кто-нибудь знает лучший! комментарий пожалуйста !!

Смежные вопросы