Article View: be.comp.programming
Article #9616Re: vraagje python
From: Vincent Spruyt
Date: Thu, 18 Apr 2002 21:57
Date: Thu, 18 Apr 2002 21:57
56 lines
3199 bytes
3199 bytes
"Bj�rn Olievier" <usenet@pandora.be> schreef in bericht
news:a8Ev8.25479$Ze.5200@afrodite.telenet-ops.be...
> Vincent Spruyt <webmaster@flash-design.be> wrote:
> > def cheeseshop(kind, *arguments, **keywords):
> [knip: code]
>
> > wordt aangeroepen door:
> >
> > cheeseshop('Limburger', "It's very runny, sir.",
> > "It's really very, VERY runny, sir.",
> > client='John Cleese',
> > shopkeeper='Michael Palin',
> > sketch='Cheese Shop Sketch')
> [knip: output]
>
> > Nu staat er nergens uitleg over die **keywords en *arguments.
>
> **keywords vangt argumenten op die je met een keyword doorgeeft in een
> dictionary, bv. client='...'.
> *arguments vangt resterende argumenten zonder keywords op in een tuple
> (positional arguments).
> In dit geval:
> 'Limburger'
> -> kind (dit is een gewoon argument, voorzien in de definitie)
> "It's very runny, sir." & "It's really very, VERY runny, sir."
> -> *arguments (de resterende positionals (zonder keyword) komen in
> een tuple)
> client='John Cleese', shopkeeper='Michael Palin', sketch='Cheese Shop
> Sketch'
> -> **keywords (een dictionary met client, shopkeeper en sketch als
> keys)
>
> Er is ook nog varargs om de nog resterende postionele of keyword
> argumenten te vangen.
>
> Hopelijk is mijn uitleg een beetje duidelijk, ik heb het kort willen
> houden. Je speelt er best nog wat mee om het goed te snappen.
>
> Nog 1 opmerking. Verwar de definitie "def func(x=1)" niet met het
> aanroepen "f(x=1)". In het eerste geval krijgt x een default waarde 1,
> in het tweede geval roep je een functie aan met keyword argument.
>
> > Wat ik niet begrijp in de def is het volgende
> > _____________________________
> > def [knip]
> > keys = keywords.keys()
> > [knip]
> > --------------------------------------
> > Is keys hier een variabele, en kan dat evengoed test zijn? Is
> > keywords.keys() een functie? Wat doet dat juist?thxgreetz
>
> keys() dient om de keys van een dictionary op te vragen.
Bedankt voor deze schitterende uitleg!
Greetz
Technical Details
Message-ID:
<ljHv8.25900$Ze.5110@afrodite.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!supernews.com!nntp.cs.ubc.ca!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mailReferences:
<8DBv8.25185$Ze.5091@afrodite.telenet-ops.be> <a8Ev8.25479$Ze.5200@afrodite.telenet-ops.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII X-Google-Thread: fcea4,bc14dac0ed015b46 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2002-04-18 14:57:40 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!supernews.com!nntp.cs.ubc.ca!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail From: "Vincent Spruyt" <info@computersecurity.be> Newsgroups: be.comp.programming References: <8DBv8.25185$Ze.5091@afrodite.telenet-ops.be> <a8Ev8.25479$Ze.5200@afrodite.telenet-ops.be> Subject: Re: vraagje python Lines: 58 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Message-ID: <ljHv8.25900$Ze.5110@afrodite.telenet-ops.be> Date: Thu, 18 Apr 2002 21:57:37 GMT NNTP-Posting-Host: 213.224.248.71 X-Complaints-To: abuse@telenet.be X-Trace: afrodite.telenet-ops.be 1019167057 213.224.248.71 (Thu, 18 Apr 2002 23:57:37 MET DST) NNTP-Posting-Date: Thu, 18 Apr 2002 23:57:37 MET DST Organization: Telenet Internet