I'm trying to brush up on my python skills, and I'm dicking around with writing classes but I seem to have run into a really confusing error. Despite importing the .py file containing my class, python is insistent that the class doesn't actually exist.
def __init__(self, arg1=None):
self.text = arg1
sayinghi = greeter("hello world!")
now as far as I can tell, I have followed all the documentation down to the 't', I even initialized arguments to None because of eval time vs creation time constraints etc which seemed to be a problem with some people, I have made sure init is the first function defined as well still to no avail, although I have a theory that the import is not working as it should.... Any help would be much appreciated.
Use the fully-qualified name:
sayinghi = testclass.greeter("hello world!")
There is an alternative form of
import that would bring
greeter into your namespace:
from testclass import greeter
import testclass # change to from testclass import greeter
import testclass sayinghi = greeter("hello world!") # change to import testclass sayinghi = testclass.greeter("hello world!")
You imported the module/package, but you need to reference the class inside it.
You could also do this instead
from testclass import *
but then beware of namespace pollution