__autoinit__ (Was: Proposal: reducing self.x=x; self.y=y;self.z=z boilerplate code)

Discussion in 'Python' started by falcon, Jul 31, 2005.

  1. falcon

    falcon Guest

    Hello python-list,

    As I Understood, semantic may be next:

    def qwerty(a,a.i,b,b.i,f.j):
    pass

    Would work like:

    def qwerty(anonymous1,anonymous2,anonymous3,anonymous4,anonymous5):
    (a,a.i,b,b.i,f.j)=(anonymous1,anonymous2,anonymous3,anonymous4,anonymous5)
    del anonymous1
    del anonymous2
    del anonymous3
    del anonymous4
    del anonymous5

    If so then I like it, because it more explicit than anything other
    and it is working right now. I just tryed:

    >>> class Stub:

    .... pass
    >>> def qwer(a1,a2,a3,a4,a5):

    .... (a,a.i,b,b.i,f['i'])=(a1,a2,a3,a4,a5)
    .... del a1
    .... del a2
    .... del a3
    .... del a4
    .... del a5
    .... print (a,a.i,b,b.i,f['i'])
    >>> f={}
    >>> qwer(Stub(),1,Stub(),2,3)

    (<__main__.Stub instance at 0x00C49530>, 1, <__main__.Stub instance at 0x00C498C8>, 2, 3)

    So there are not too much for implement.
    Another question - named arguments. How I can assign to them?
    May be so:
    f={}
    def qwerty(a,a.i,f['i']):
    print (a,a.i,f['i'])
    qwerty(f['i']=3,a=Stub(),a.i=4) - ?

    and for __init__:
    class MyClass:
    def __init__(self,self.i,self.j,self.k):
    pass

    MyObject = MyClass(self.i=1,self.j=2,self.k=3)

    ?

    or may be there can be an aliase syntax?

    class MyClass:
    def __init__(self, self.i by i,self.j by j, self.k by k):
    pass

    MyObject = MyClass(i=1,j=2,k=3)

    --
    Sokolov Yura
     
    falcon, Jul 31, 2005
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. dwok
    Replies:
    2
    Views:
    482
    Lucas Tam
    May 11, 2005
  2. Ralf W. Grosse-Kunstleve
    Replies:
    16
    Views:
    601
    Lonnie Princehouse
    Jul 11, 2005
  3. Ralf W. Grosse-Kunstleve
    Replies:
    18
    Views:
    606
    Bengt Richter
    Jul 11, 2005
  4. Ralf W. Grosse-Kunstleve
    Replies:
    2
    Views:
    415
    Dan Sommers
    Jul 12, 2005
  5. Nick Coghlan

    Reducing import try/except boilerplate

    Nick Coghlan, Dec 21, 2005, in forum: Python
    Replies:
    1
    Views:
    326
    Bengt Richter
    Dec 21, 2005
Loading...

Share This Page