I'm new to Python and i have looked around on how to import my custom modules from a directory/ sub directories. Such as this and this.
This is my structure,
index.py
__init__.py
modules/
  hello.py
  HelloWorld.py
  moduletest.py
index.py,
# IMPORTS MODULES
import hello
import HelloWorld
import moduletest
# This is our application object. It could have any name,
# except when using mod_wsgi where it must be "application"
def application(environ, start_response):
    # build the response body possibly using the environ dictionary
    response_body = 'The request method was %s' % environ['REQUEST_METHOD']
    # HTTP response code and message
    status = '200 OK'
    # These are HTTP headers expected by the client.
    # They must be wrapped as a list of tupled pairs:
    # [(Header name, Header value)].
    response_headers = [('Content-Type', 'text/plain'),
                       ('Content-Length', str(len(response_body)))]
    # Send them to the server using the supplied function
    start_response(status, response_headers)
    # Return the response body.
    # Notice it is wrapped in a list although it could be any iterable.
    return [response_body]
init.py,
from modules import moduletest
from modules import hello
from modules import HelloWorld
modules/hello.py,
def hello():
    return 'Hello World from hello.py!'
modules/HelloWorld.py,
# define a class
class HelloWorld:
    def __init__(self):
        self.message = 'Hello World from HelloWorld.py!'
    def sayHello(self):
        return self.message
modules/moduletest.py,
# Define some variables:
numberone = 1
ageofqueen = 78
# define some functions
def printhello():
    print "hello"
def timesfour(input):
    print input * 4
# define a class
class Piano:
    def __init__(self):
        self.type = raw_input("What type of piano? ")
        self.height = raw_input("What height (in feet)? ")
        self.price = raw_input("How much did it cost? ")
        self.age = raw_input("How old is it (in years)? ")
    def printdetails(self):
        print "This piano is a/an " + self.height + " foot",
        print self.type, "piano, " + self.age, "years old and costing\
        " + self.price + " dollars."
But through the Apache WSGI, I get this error,
[wsgi:error] [pid 5840:tid 828] [client 127.0.0.1:54621] import hello [wsgi:error] [pid 5840:tid 828] [client 127.0.0.1:54621] ImportError: No module named hello
Any idea what have I done wrong?
EDIT:
index.py
__init__.py
modules/
  hello.py
  HelloWorld.py
  moduletest.py
  User/
    Users.py
 
     
     
     
     
    