Ответ 1
Определите класс перед его использованием:
class Something:
def out(self):
print("it works")
s = Something()
s.out()
Вам нужно передать self
в качестве первого аргумента ко всем методам экземпляра.
У меня есть python script, и я получаю следующую ошибку:
Traceback (most recent call last):
File "C:\Users\Tim\Desktop\pop-erp\test.py", line 1, in <module>
s = Something()
NameError: name 'Something' is not defined
Вот код, который вызывает проблему:
s = Something()
s.out()
class Something:
def out():
print("it works")
Это выполняется с помощью Python 3.3.0 под Windows 7 x86-64.
Почему класс Something
не может быть найден?
Определите класс перед его использованием:
class Something:
def out(self):
print("it works")
s = Something()
s.out()
Вам нужно передать self
в качестве первого аргумента ко всем методам экземпляра.
Вы должны определить класс перед созданием экземпляра класса. Переместите вызов Something
в конец script.
Вы можете попытаться поставить корзину перед лошадью и вызвать процедуры до того, как они будут определены, но это будет уродливый взлом, и вам придется катиться самостоятельно, как определено здесь:
Сделать определение функции в файле порядка на питоне независимым