Thx for help, extreme lack of free time lately, will look into it. [Wouldn't've noticed myself that urlopen is not a class.]
On Tue, Dec 23, 2008 at 6:03 PM, Richard Lovely <roadier...@googlemail.com>wrote: > OK, going on Kent's post: > > from urllib import urlopen > > class fetch(object): > def __init__(self, *args): > self.response = urlopen(*args) > self.content = self.response.read() > > > I forgot urlopen was a function. It made sense in my head for it to > be a class, instead of _returning_ a class. > > It's trying to call __init__ on a functionType instance, and it's > getting confused. > > See http://dpaste.com/hold/101951/ for another example. The error > message is something cryptic, but between #python and I we think it's > something to do with calling type(). > --- > Richard "Roadie Rich" Lovely, part of the JNP|UK Famile > www.theJNP.com > > > > 2008/12/23 Kent Johnson <ken...@tds.net>: > > On Tue, Dec 23, 2008 at 9:31 AM, Omer > > <jaggojaggo...@gmail.com<jaggojaggo%2...@gmail.com>> > wrote: > > > >>>>> from urllib import urlopen > >>>>> class fetch(urlopen): > >> ... def __init__(self,*args): > >> ... urlopen.__init__(self, *args) > >> ... self.content = self.read() > >> ... > >> > >> Traceback (most recent call last): > >> File "<interactive input>", line 1, in <module> > >> TypeError: Error when calling the metaclass bases > >> function() argument 1 must be code, not str > >> > >> Anybody, any idea what's up with that? > > > > That's pretty obscure, not sure why you get exactly that error! > > > > Anyway the code should be > > class fetch(object): > > > > urlopen is a function, not a class, so it can't be a base class of > > fetch. There is no need for it to be a base class, either; just use > > object. > > > > Kent > > _______________________________________________ > > Tutor maillist - Tutor@python.org > > http://mail.python.org/mailman/listinfo/tutor > > >
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor