Python s Modules by E Esin GOKGOZ What is a module a file containing Python definitions and statements definitions from a module can be imported into other modules or into the main module The file name is the module name with the suffix py appended Module s Cont d Fibonacci numbers module def fib n write Fibonacci series up to n a b 0 1 while b n print b a b b a b def fib2 n return Fibonacci series up to n result a b 0 1 while b n result append b a b b a b return result Module s cont d import fibo fibo fib 1000 1 1 2 3 5 8 13 21 34 55 89 144 233 fibo fib2 100 1 1 2 3 5 8 13 21 34 55 89 fibo name fibo fib fibo fib fib 500 1 1 2 3 5 8 13 21 34 55 89 144 233 377 Module s Cont d Modules can import other modules from fibo import fib fib2 fib 500 1 1 2 3 5 8 13 21 34 55 89 144 233 377 from fibo import fib 500 1 1 2 3 5 8 13 21 34 55 89 144 233 377 The Module Search Path When a module named spam is imported the interpreter searches for a file named spam py in the current directory and then in the list of directories specified by the environment variable PYTHONPATH When PYTHONPATH is not set or when the file is not found there the search continues in an installationdependent default path on Unix this is usually usr local lib python Compiled Python files if a file called spam pyc exists in the directory where spam py is found this is assumed to contain an already byte compiled version of the module spam Compiled Python files cont d When the Python interpreter is invoked with the O flag optimized code is generated and stored in pyo files A program doesn t run any faster when it is read from a pyc or pyo file than when it is read from a py file the only thing that s faster about pyc or pyo files is the speed with which they are loaded The module compileall can create pyc files for all modules in a directory The dir Function Without arguments dir lists the names you have defined currently a 1 2 3 4 5 import fibo fib fibo fib dir builtins doc file name a fib fibo sys The dir Function cont d standard module builtin import builtin dir builtin ArithmeticError AssertionError AttributeError DeprecationWarning EOFError Ellipsis EnvironmentError Exception False FloatingPointError FutureWarning IOError ImportError IndentationError IndexError Packages Packages are a way of structuring Python s module namespace by using dotted module names e g the module name A B designates a submodule named B in a package named A Sound init py Top level package Initialize the sound package formats Subpackage for file format conversions init py wavread py wavwrite py aiffread py aiffwrite py auread py effects Subpackage for sound effects init py echo py surround py reverse py filters Subpackage for filters init py equalizer py vocoder py Packages cont d import sound effects echo sound effects echo echofilter input output delay 0 7 atten 4 from sound effects import echo echo echofilter input output delay 0 7 atten 4 from sound effects echo import echofilter Importing From a Package from sound effects import must have all all echo surround reverse Q U E S T I O N S
View Full Document
Unlocking...