Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #12908

Re: How to structure packages

Date 2011-09-07 12:11 -0600
From "Littlefield, Tyler" <tyler@tysdomain.com>
Subject Re: How to structure packages
References <2a4f542c-a8c1-46c7-9899-a3fad0940cf6@x11g2000yqc.googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.843.1315419131.27778.python-list@python.org> (permalink)

Show all headers | View raw


On 9/7/2011 9:56 AM, bclark76 wrote:
> I'm learning python, and was playing with structuring packages.
>
> Basically I want to have a package called mypackage that defines a
> number of classes and functions.
>
>
> so I create:
>
> mypackage
>      __init__.py
>      myfunc.py
>      MyClass.py
>
>
> my __init__.py is blank.
>
> my MyClass.py looks like:
>
> import blah
>
> class MyClass(blahblah):
>      blah
>      blah
>      blah
>
>
> then I have a run.py that looks like
>
> from mypackage import MyClass
>
>
> x = MyClass()
>
>
> This doesn't work because MyClass is mypackage.MyClass.MyClass.
> There's this MyClass module 'in the way'.
>
You can use the __init__.py to promote that class up. so:
from myclass import myclass
So that means that myclass will just be in mypackage.myclass, and thus 
your from mypackage import myclass would work perfectly. I'm not sure if 
this is how you're supposed to do it, but it works.

> I'm trying to follow the rule that every file defines only one class.
> I could define MyClass in __init__.py, but then what if I wanted to
> define more classes in the mypackage package? My one class per file
> rule goes out the window.
>
> Is this rule wrongheaded, or is there another way to do this?
>
>
> Thanks.
>


-- 

Take care,
Ty
Web: http://tds-solutions.net

Sent from my toaster.

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

How to structure packages bclark76 <bclark76@gmail.com> - 2011-09-07 08:56 -0700
  Re: How to structure packages John Gordon <gordon@panix.com> - 2011-09-07 16:11 +0000
    Re: How to structure packages Rafael Durán Castañeda <rafadurancastaneda@gmail.com> - 2011-09-07 19:18 +0200
  Re: How to structure packages Peter Otten <__peter__@web.de> - 2011-09-07 19:30 +0200
    Re: How to structure packages Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2011-09-08 10:29 +1000
      Re: How to structure packages Chris Angelico <rosuav@gmail.com> - 2011-09-08 12:39 +1000
      Re: How to structure packages Dan Sommers <dan@tombstonezero.net> - 2011-09-08 09:51 +0000
      Re: How to structure packages Jonathan Hartley <tartley@tartley.com> - 2011-09-08 03:22 -0700
      Re: How to structure packages Nobody <nobody@nowhere.com> - 2011-09-09 01:45 +0100
        Re: How to structure packages Chris Angelico <rosuav@gmail.com> - 2011-09-09 11:37 +1000
          Re: How to structure packages Nobody <nobody@nowhere.com> - 2011-09-10 11:11 +0100
            Re: How to structure packages Chris Angelico <rosuav@gmail.com> - 2011-09-10 20:29 +1000
            Re: How to structure packages "Littlefield, Tyler" <tyler@tysdomain.com> - 2011-09-10 08:04 -0600
        Re: How to structure packages Alec Taylor <alec.taylor6@gmail.com> - 2011-09-10 02:38 +1000
  Re: How to structure packages rantingrick <rantingrick@gmail.com> - 2011-09-07 10:56 -0700
  Re: How to structure packages "Littlefield, Tyler" <tyler@tysdomain.com> - 2011-09-07 12:11 -0600
  Re: How to structure packages Westley Martínez <anikom15@gmail.com> - 2011-09-07 14:35 -0700

csiph-web