From: "enrico franchi" <enrico.fran...@gmail.com>
2014/1/5 Raffaele Salmaso <raffa...@salmaso.org>


class Veicoli:
>     ruote = 4
>
> Auto = Veicoli()
> Auto.ruote = 5



 class Veicoli(object):
  def __init__(self, ruote=4):
    self._ruote = ruote


Giusto visto che nessuno lo ha menzionato in modo esteso e vale
definitivamente una precisazione.
Siccome c'e' un noto manuale (che dovrebbe venire *deprecato* brutalmente)
che introduce le cose come le stai facendo, mi viene il sospetto che tu lo
stia seguendo (e te lo sconsiglio vivamente).
GB: Ciao e grazie per la tua preziosa mail, ricca di commenti a margine che danno spunti tutt'altro che marginali. Non so a che manuale tu ti stia riferendo, quelli presenti fra la documentazione di www.python.it li ho praticamente scorsi tutti, più qualche altro libro in inglese e quelli di Marco beri... Ma non importa sapere quale sia, il concetto mi è chiaro, ho capito l'importanza di avere un metodo di inizializzazione, mentre ancora mi sfugge il vantaggio di ereditare da object, questo però, a causa della mia conoscenza insufficiente di Python, imparerò via via che apprendo.

Dimentichiamo la tua definizione di classe. Sul manuale maledetto, *prima*
ti fa vedere qualcosa tipo (nb, siccome quella classe rappresenta *un*
veicolo e non una collezione di veicoli, tanto vale chiamarlo veicolo):

GB: A mia parziale discolpa posso dire che ho scritto in fretta, soloper chiarire il concetto di properties. In uno script serio, l'avrei forse fatta meglio... :) col suo bravo __init__(self): Per sottintendere che capisco il concetto di classe come fabbrica di oggetti, l'avevo chiamata Veicoli, al plurare, mentre Auto, era l'oggetto appartenente alla classe veicoli, il che è corretto anche da un punto di vista logico e semantico.

Bene, grazie ancora, ho letto con interesse tutto ciò che mi hai consigliato e ne farò tesoro. GB.
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a