Underc0de

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: r4nd0m1z3r en Mayo 02, 2016, 09:05:26 PM

Título: [SOLUCIONADO] Clase en una lista (Python)
Publicado por: r4nd0m1z3r en Mayo 02, 2016, 09:05:26 PM
Hola tenia una duda sobre un código, porque no se que parte del código he hecho mal, he intentado declarar la clase de distintas maneras y no doy con la solucion

Código (python) [Seleccionar]

lista_jugadores = []

class jugador:
    inventario = []

for i in range(0,4):
    lista_jugadores.append(jugador())

lista_jugadores[0].inventario.append('Hacha')


Cuando hace el append a lista_jugadores[0], el valor tambien se añade a los otros inventarios.
Título: Re:[Ayuda] Clase en una lista
Publicado por: rush en Mayo 03, 2016, 12:05:06 AM
No se mucho de phyton pero creo que tienes que declarar que es lo que vas a heredar:

Clases en Phyton (https://docs.python.org/2/tutorial/classes.html)

(http://i.imgur.com/X4CxAqx.png)

De acuedo a este ejemplo por lo que veo hace un

Código (phyton) [Seleccionar]
def __init__(self, realpart, imagpart):

donde le pasa como parametros realpart y imgpart

en tu caso tendrias que pasarle 'Hacha' como parametro a la clase jugador y hacerle un append a inventario...

si no es así, que alguien me corrija
Título: Re:[Ayuda] Clase en una lista
Publicado por: r4nd0m1z3r en Mayo 03, 2016, 06:32:04 AM
No tienes permitido ver enlaces. Registrate o Entra a tu cuenta
No se mucho de phyton pero creo que tienes que declarar que es lo que vas a heredar:

Clases en Phyton (https://docs.python.org/2/tutorial/classes.html)

(http://i.imgur.com/X4CxAqx.png)

De acuedo a este ejemplo por lo que veo hace un

Código (phyton) [Seleccionar]
def __init__(self, realpart, imagpart):

donde le pasa como parametros realpart y imgpart

en tu caso tendrias que pasarle 'Hacha' como parametro a la clase jugador y hacerle un append a inventario...

si no es así, que alguien me corrija

Lo probaba jajajaja pero por lo que fuese dentro del __init__ no habia puesto el self en la variable, gracias!