Dlaczego moja funkcja Pythona nie jest zdefiniowana, gdy istnieje w tym samym pliku?
Mam prostą funkcję, którą będę nazywałmyFunction
. Wymaga dwóch parametrów, wykonuje na nich pewne obliczenia i zwraca wynik.
Mam też klasęMyClass
, który ma konstruktora, który ma taki nagłówek:
__init__(self, bar, fun=myFunction):
Gdy próbuję cokolwiek uruchomić w tej klasie, pojawia się następujący błąd:
MyClass
def __init__(self, bar, fun=myFunction):
NameError: name 'myFunction' is not defined
Jeśli usunę tę klasę, mogę użyć myFun w powłoce Pythona, więc co to za umowa?