when you import attributes using the from import statementyou don' need to precede the attribute name with module name this feature makes the attribute easier to access using the from import statement can also cause problems if two attributes have the same nameyou can import only one of them the import statement prevents name collisionswhich is important when you have large number of attributes to import in sumyou must exercise care when using the from import statement type saygoodbye("harold"and press enter you imported only the sayhello(functionso python knows nothing about saygoodbye(and displays an error message the selective nature of the from import statement can cause problems when you assume that an attribute is present when it really isn' close the python shell the python shell window closes finding modules on disk in order to use the code in modulepython must be able to locate the module and load it into memory the location information is stored as paths within python whenever you request that python import modulepython looks at all the files in its list of paths to find it the path information comes from three sourcesenvironment variables tells you about python environment variablessuch as pythonpaththat tell python where to find modules on disk current directoryearlier in this you discover that you can change the current python directory so that it can locate any modules used by your application default directorieseven when you don' define any environment variables and the current directory doesn' yield any usable modulespython can still find its own libraries in the set of default directories that are included as part of its own path information it' helpful to know the current path information because the lack of path can cause your application to fail the following steps demonstrate how you can obtain path information open the python shell you see the python shell window appear