Groups | Search | Server Info | Login | Register
Groups > dk.edb.programmering > #100
| From | Klaus Alexander Seistrup <klaus@seistrup.dk> |
|---|---|
| Newsgroups | dk.edb.programmering |
| Subject | Re: Principielt spørgsmål |
| Date | 2020-11-05 13:05 +0000 |
| Organization | BornMesh, Bornholm, Denmark |
| Message-ID | <vinji-5fa3f5d0-b3665218@klaus.seistrup.dk> (permalink) |
| References | <q96ozxpc4m3h.dlg@lundhansen.dk> |
Bertel Lund Hansen skrev:
> Jeg kan bruge den på to måder, og spørgsmålet er hvilken
> der er mest logisk.
Det mest pytoniske vil være at benytte __init__-metoden. Når man
instantierer en klasse skal man ikke normal ligge og fedte med en
extra .init() før den kan bruges.
Kan man overhovedet bare kalde Utilities.init() i det andet
eksempel, uden at have instantieret klassen først?
(I parentes bemærket skal init() i andet tilfælde som minimum have
et self-argument — ellers får man en fejl når man kalder klassen,
fordi fortolkeren mener at antallet af givne argumenter ikke svarer
overens med det forventede.)
> Hvad mener I?
Jeg vil uden at blinke vælge den første løsning. Afhængigt af de
konkrete omstændigheder, ville jeg dog måske lade __init__() tage
et eller flere argumenter, fx
class Utilities(object):
def __init__(self, kept=1, wanted=0):
⋮
— eller hvad der nu er brug for — som så kan instantiere med fx
utilities = Utilities(kept=2)
hvis der er behov for andre værdier en standardværdierne.
--
Klaus Alexander Seistrup
🚀 gemini://port1965.eu/
Back to dk.edb.programmering | Previous | Next — Previous in thread | Next in thread | Find similar
Principielt spørgsmål Bertel Lund Hansen <gadekryds@lundhansen.dk> - 2020-11-05 09:34 +0100
Re: Principielt spørgsmål Klaus Alexander Seistrup <klaus@seistrup.dk> - 2020-11-05 13:05 +0000
Re: Principielt spørgsmål Bertel Lund Hansen <gadekryds@lundhansen.dk> - 2020-11-05 15:24 +0100
Re: Principielt spørgsmål Klaus Alexander Seistrup <klaus@seistrup.dk> - 2020-11-07 07:50 +0000
csiph-web