On 12/22/2009 1:14 PM Robert Johansson said...
Hi all, suppose I need to import a module inside a class and that I need
to use it in to different methods. Is this is the way to do it?
Well, neither is really (see comments below). I generally import only
at the top of a module. You can of course import within a method as
needed, and I sometimes will do so if the imported module will only be
used in the single method, but I tend not to as I've come over time to
expect the imports at the top.
class test():
import time
def method1(self):
print 'method 1: ', time.clock()
this won't work -- time isn't within method1's accessible scope (local,
global, builtin). You could do test.time.clock() to access it, but
importing globally won't confuse a reader by thinking it's something
different.
Emile
def method2(self):
print 'method 2: ', time.clock()
If I only need the module in one method should I then place it inside
that method or keep it outside?
class test():
def method1(self):
import time
print 'method 1: ', time.clock()
def method2(self):
print 'method 2: '
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor