Salve ragazzi ho creato un albero di parole inizialmente vuoto in questo modo:
class WNode(object):
def __init__(self, w):
self._w = w
self._children = []
self._level = 0
def add_children(self, w):
self._children.append(w)
Sapete dirmi come posso stampare questo albero e non far apparire la scritta <__main__.WNode at 0x57992f0>
Grazie
Stampare albero parole python
Moderatore: Staff
Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
- d4z_c0nf
- Packager
- Messaggi: 1296
- Iscritto il: mar 14 mar 2006, 18:07
- Nome Cognome: Rocco Aliberti
- Slackware: 14.2-current64
- Kernel: 4.14.73
- Desktop: awesomeWM
- Località: Pinerolo
Re: Stampare albero parole python
Mmm, tu stampi l'istanza WNode che hai creato. In realtà tu vuoi stampare il suo "attributo" _children.
Quindi dovresti fare
O se vuoi fare un meteodo di WNode che stampi il suo "_children" o ancora ridefinire __str__ per WNode
o
così quando usi
otterrai la stampa di foo._children
Quindi dovresti fare
Codice: Seleziona tutto
foo = WNode('something')
foo.add_children('word')
print(foo._children)
Codice: Seleziona tutto
def __str__(self):
return "%s" % self._children
Codice: Seleziona tutto
def __str__(self):
return self._children.__str__()
Codice: Seleziona tutto
print(foo)
- lablinux
- Linux 4.x
- Messaggi: 1212
- Iscritto il: gio 27 nov 2008, 12:23
- Desktop: Gnome
- Distribuzione: Debian testing
- Località: Rho
Re: Stampare albero parole python
Posso permettermi un appunto/domanda?
perché nei parametri dell'initi metti la variabile w che non usi (o cosi sembra)?
perché nei parametri dell'initi metti la variabile w che non usi (o cosi sembra)?