Hmm... if it's a deep hierarchy, i generally prefer import my.module.hierararchy.wantedModule as wantedModule
...as opposed to having to use the full hierarchy all the time. It's still easily discoverable where it came from, you can still do easy search/replace if needed, etc. As for from maya import cmds vs import maya.cmds as cmds ... I tend to prefer the second, because it makes it clear that maya.cmds is a module. Ie, if you do: from maya import cmds ...cmds could be anything - a function, a dictionary, a module, etc. It also has the added bonus that if you ever want to do text searches through your code base, you still have the whole module name in one piece - ie, it will be found if you just search for "maya.cmds". (Of course, if you want to be certain you found all uses of a given module, you need to search for both forms... but still, I find it nice.) Just my 2 cents... - Paul On Tue, Oct 2, 2012 at 11:16 PM, Marco D'Ambros <[email protected]>wrote: > I'm for the second one > from maya import cmds > > I don;t see the point to use > import maya.cmds as cmds > > -------------------------------- > Marco D'Ambros > phone : (+61) (0) 435809628 > web : www.marcodambros.com > mail : [email protected] > > > > On Wed, Oct 3, 2012 at 11:44 AM, Jesse Kretschmer <[email protected]> wrote: > >> I would certainly advise against "from bigpackage import *" as the >> wildcard could lead to namespace collision and general funny business. >> >> Let me hijack this topic with another question about imports. Which is >> more correct; "import maya.cmds as cmds" or "from maya import cmds"? I >> prefer the latter, but mostly because it is fewer keystrokes. >> >> >> On Tue, Oct 2, 2012 at 6:09 PM, Justin Israel <[email protected]>wrote: >> >>> Why do these sites advise against "from ... import ..."? >>> >>> >>> On Oct 2, 2012, at 5:01 PM, Python inside Maya <[email protected]> >>> wrote: >>> >>> I would love to hear some thoughts on handling python imports, >>> specifically in larger code depots with deeper hierarchies. >>> The way I see it, the safest way to go is to import company.teamA. >>> whatever.module >>> >>> The big draw back that I see is that the code becomes bloated >>> with company.teamA.whatever.module.class().method() >>> From that perspective - from company.teamA.whatever import module - >>> seems like a better choice >>> Then code reads module.class().method() >>> >>> This gets more and more problematic, the deeper the code depot hierarchy >>> is/gets. When reading up on Python imports several sites advice against >>> using the from-import technique. >>> Any input is appreciated, >>> >>> Thanks, >>> /Christian >>> >>> -- >>> view archives: http://groups.google.com/group/python_inside_maya >>> change your subscription settings: >>> http://groups.google.com/group/python_inside_maya/subscribe >>> >>> -- >>> view archives: http://groups.google.com/group/python_inside_maya >>> change your subscription settings: >>> http://groups.google.com/group/python_inside_maya/subscribe >>> >> >> -- >> view archives: http://groups.google.com/group/python_inside_maya >> change your subscription settings: >> http://groups.google.com/group/python_inside_maya/subscribe >> > > -- > view archives: http://groups.google.com/group/python_inside_maya > change your subscription settings: > http://groups.google.com/group/python_inside_maya/subscribe > -- view archives: http://groups.google.com/group/python_inside_maya change your subscription settings: http://groups.google.com/group/python_inside_maya/subscribe
