[Tutor] class methods: using class vars as args?
Alex Hall
mehgcap at gmail.com
Thu May 27 23:42:30 CEST 2010
Thanks for all the explanations, everyone. This does make sense, and I
am now using the
if(arg==None): arg=self.arg
idea. It only adds a couple lines, and is, if anything, more explicit
than what I was doing before.
On 5/27/10, Mark Lawrence <breamoreboy at yahoo.co.uk> wrote:
> On 23/05/2010 20:40, Alex Hall wrote:
>> Hello all,
>> I know Python reasonably well, but I still run into basic questions
>> which those over on the other python list request I post here instead.
>> I figure this would be one of them:
>> Why would this not work:
>>
>> class c(object):
>> def __init__(self, arg1, arg2):
>> self.arg1=arg1
>> self.arg2=arg2
>>
>> def doSomething(self, arg3=self.arg1):
>> ...
>>
>> The above results in an error that "name 'self' is not defined". Why
>> can I not set the default values of a method's arguments to class vars
>> like that? Thanks!
>>
>>
> You've already had some explanations as to what happens, but what are
> you trying to achieve? Why don't you forget about arg3 because it is
> arg1, which must exist by creating an instance of class c, or you
> wouldn't be able to call doSomething in the first place?
>
> HTH.
>
> Mark Lawrence
>
>
> _______________________________________________
> Tutor maillist - Tutor at python.org
> To unsubscribe or change subscription options:
> http://mail.python.org/mailman/listinfo/tutor
>
--
Have a great day,
Alex (msg sent from GMail website)
mehgcap at gmail.com; http://www.facebook.com/mehgcap
More information about the Tutor
mailing list