[python] Problem s argumentami pri volani metody instancie
mykhal
michal.bozon na gmail.com
Pátek Březen 31 13:29:32 CEST 2017
vtip je v tom, ze jste asi zkopiroval definici funkce
multipart_encode, ale zapomnel za ni uvest predefinovani pres tridu
Callable, coz je zrejme osklivy hack, jak krkolomne vyrobit statickou
metodu - tedy takovou, ktera neocekava jako prvni argument self
bezneji se to dela tak, ze nad definici funkce se pouzije dekorator
staticke metody:
@staticmethod
pripadne se pouzije starsi forma zapisu - pod definici funkce se doda:
multipart_encode = staticmethod(multipart_encode)
m.
On Jul 17, 6:05 pm, Carry <carr... na seznam.cz> wrote:
> Zdravim,
>
> snazim sa pouzit vo svojom skripte modul MultipartPostHandler.py (zhttp://odin.himinbi.org/MultipartPostHandler.py) pre posielanie http
> requestov serveru ale python hlasi tuto chybu:
>
> File "...\MultipartPostHandler.py", line 79, in http_request
> boundary, data = self.multipart_encode(v_vars, v_files)
> TypeError: multipart_encode() takes at least 3 arguments (2 given)
>
> riadok 79 je toto volanie v metode objektu:
> boundary, data = self.multipart_encode(v_vars, v_files)
>
> ...a signatura metody je:
> def multipart_encode(self, vars, files, boundary = None, buf = None):
>
> Self sa predava implicitne a posledne dva parametre maju tiez implicitne
> hodnoty, takze nechapem co mu vadi :-/
>
> Prosim o zhovievavost, nakolko som v Pythone newbie.
> Dopredu vdaka za Vase odpovede.
> carry
Další informace o konferenci Python