Ok, więc mam ten kod:„classmethod” obiekt nie jest wymagalne
class SomeClass:
@classmethod
def func1(cls,arg1):
#---Do Something---
@classmethod
def func2(cls,arg1):
#---Do Something---
# A 'function map' that has function name as its keys and the above function
# objects as values
func_map={'func1':func1,'func2':func2}
@classmethod
def func3(cls,arg1):
# following is a dict(created by reading a config file) that
# contains func names as keys and boolean as values that tells
# the program whether or not to run that function
global funcList
for func in funcList:
if funcList[func]==True:
cls.func_map[func](arg1) #TROUBLING PART!!!
if _name__='main'
SomeClass.func3('Argumentus-Primus')
Kiedy uruchomić ten ciśgle błąd:
Exception TypeError: "'classmethod' object is not callable"
jestem w stanie dowiedzieć się, co jest nie tak z to i będzie wdzięczny za twoją pomoc.
Przepraszamy za niedokładne dodanie opisu błędu. Edytował odpowiedź (i to wszystko, co wiem o tym błędzie). A gdybym miał odpowiedź na pytanie, dlaczego miałbym zadać to pytanie? : S Rozejrzałem się za tym błędem i odkryłem, że ludzie otrzymywali te błędy, ponieważ nie używali poprawnie kodu, np. w wątku facet miał dostęp do elementu ze słownika takiego jak 'someDict (key)' i robił podobny błąd .. ale uważam, że dzwonię do funkcji (która powinna być wywołana, prawda?). Popraw mnie, jeśli się mylę. – user1126425
Gdy pojawi się błąd, skopiuj wklej cały ślad stosu. Powie Ci przydatne rzeczy, na przykład, w której linii pojawia się błąd. –
Lattye, 'Exception TypeError:" Obiekt 'classmethod' nie jest wywoływany "w 'pyadecg.__wrap_py_func 'ignored' to wszystko, co mogę zobaczyć w stosie stacków. Dzięki za pomoc – user1126425