we change the name in nested py attribute qualification directs python to name in the module objectrather than name in the importernested pynested py import nested nested nested printer(get module as whole okchange nested ' python nested py from can obscure the meaning of variables mentioned this earlier but saved the details for here because you don' list the variables you want when using the from module import statement formit can accidentally overwrite names you're already using in your scope worseit can make it difficult to determine where variable comes from this is especially true if the from form is used on more than one imported file for exampleif you use from on three modules in the followingyou'll have no way of knowing what raw function call really meansshort of searching all three external module files--all of which may be in other directoriesfrom module import from module import from module import badmay overwrite my names silently worseno way to tell what we getfunc(huh??the solution again is not to do thistry to explicitly list the attributes you want in your from statementsand restrict the from form to at most one imported module per file that wayany undefined names must by deduction be in the module named in the single from you can avoid the issue altogether if you always use import instead of frombut that advice is too harshlike much else in programmingfrom is convenient tool if used wisely even this example isn' an absolute evil--it' ok for program to use this technique to collect names in single space for convenienceas long as it' well known reload may not impact from imports here' another from-related gotchaas discussed previouslybecause from copies (assignsnames when runthere' no link back to the modules where the names came from names imported with from simply become references to objectswhich happen to have been referenced by the same names in the importee when the from ran module gotchas