Bueno yo tenia el mismo problema que tu hace tiempo, es dificil entender la POO.
Aqui te explico de forma facil de entender un ejemplo, no es del todo correcto pero espero que te ayude.
Código:
class Coche:
def inicializar(self, gasolina):
self.gasolina = gasolina
Aqui estrenamos la clase Coche, y creamos inicializar (por protocolo seria __init__ pero a mi no me gusta :P) con self (se pone en todos) y gasolina (valor que utilizaremos). lo de self.gasolina = gasolina hace referencia a gasolina.
Código:
def arrancar(self, gasolina):
if gasolina == 0:
print "Sin gasolina"
print "El coche no arranca"
else:
print "Deposito lleno"
print "Arranca"
Con esto comprobamos si el coche puede arrancar. Si el nivel de gasolina es 0, no arranca, si no, arranca. Bien, nuestra clase está hecha. Pero, ¿De qué vale? Si ejecutas esto no saldra nada. Fuera de la clase, damos un nombre a esta clase. por ejemplo:
Código:
elcochecitolere = Coche()
a partir de ahora para refirirnos a la clase usamos elcochecitolere.
Podemos acceder a los métodos de la clase, por ejemplo si queremos que el coche tenga el nivel de gasolina en 1 hariamos:
Código:
elcochecitolere.inicializar(1)
elcochecitolere.arrancar(1)
El código completo sería así:
Código:
print "Intentando arrancar el coche..."
class Coche:
def inicializar(self, gasolina):
self.gasolina = gasolina
def arrancar(self, gasolina):
if gasolina == 0:
print "Sin gasolina"
print "El coche no arranca"
else:
print "Deposito lleno"
print "Arranca"
elcochecitolere = Coche()
elcochecitolere.inicializar(1)
elcochecitolere.arrancar(1)
Y la respuesta del terminal (en linux) sería:
Código:
Intentando arrancar el coche...
Deposito lleno
Arranca
Posiblemente tenga algún fallo en mi explicación, pero intenté exponerlo sin tanta terminología porque yo también estoy aprendiendo, y con todas esas palabrajas al principio cuesta. Espero haber ayudado :3