all five are named xthe fact that they are all assigned at different places in the source code or to different objects makes all of these unique variables you should take the time to study this example carefully because it collects ideas we've been exploring throughout the last few parts of this book when it makes sense to youyou will have achieved python namespace enlightenment oryou can run the code and see what happens--here' the remainder of this source filewhich makes an instance and prints all the xs that it can fetchmanynames pycontinued if __name__ ='__main__'print(xf( (print( module ( manynames outside file global local module name unchanged obj (print(obj xmake instance class name inherited by instance obj (print(obj xprint( xattach attribute name to instance now instance class ( obj if no in instance#print( #print( xfailsonly visible in method failsonly visible in function the outputs that are printed when the file is run are noted in the comments in the codetrace through them to see which variable named is being accessed each time notice in particular that we can go through the class to fetch its attribute ( )but we can never fetch local variables in functions or methods from outside their def statements locals are visible only to other code within the defand in fact only live in memory while call to the function or method is executing some of the names defined by this file are visible outside the file to other modules toobut recall that we must always import before we can access names in another file-name segregation is the main point of modulesafter allotherfile py import manynames print(xprint(manynames the global here globals become attributes after imports manynames (manynames ( manynames' xnot the one here local in other file' function print(manynames xi manynames (print( attribute of class in other module class coding details still from class here