
Otro problema en POO
Publicado por Agustin (21 intervenciones) el 10/09/2014 19:53:17
Tengo otro problema, aunque no sé si es otro problema en si, mira el codigo
import random
c = random.randint(1, 3)
Me gustaría que me ayudaran a "optimizar" el codigo de alguna manera, para hacerlo un poco más sencillo, tampoco consigo usar las funciones coche() bici() y moto() ya que cuando las llamo en la función conducir() al ejecutar el código
me dice (depende de cual sea, digamos coche()) que el nombre coche() no está definido o algo así.
Esto es lo que sale:
PD: EL CÓDIGO NO ESTÁ COMPLETO
import random
c = random.randint(1, 3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
class Vehiculo():
litros = 5
def coche(self):
return "Has montado en el coche"
def bici(self):
return "Has montado en la bici"
def moto(self):
print "Has montado en la moto"
def conducir(self):
el_coche = coche()
la_bici = bici()
la_moto = moto()
litros = 5
while c == 3:
litros -= 1
el_coche
print "Quedan", litros, "litros de gasolina"
if litros == 0:
print "No queda gasolina, el coche no se mueve"
print "Puedes montar en bici o en moto"
elegir = raw_input("Elige el vehiculo: ")
if elegir == bici:
la_bici
elif elegir == moto:
la_moto
while c == 2:
la_bici
print "Eres deportista y no paras de andar en la bici"
print "y no te cansas hasta muy tarde. Al dia siguiente coges o el coche o la moto"""
elegir1 = raw_input("Que escoges: ")
while elegir1 == coche:
litros -= 1
el_coche
print "Quedan", litros, "litros de gasolina"
while litros == 0:
print "No queda gasolina, el coche no se mueve"
la_moto
print "Quedan", litros, "litros de gasolina"
if litros == 0:
print "No queda gasolina, la moto no se mueve"
vehi = Vehiculo()
vehi.conducir()
vehi.coche()
vehi.bici
Me gustaría que me ayudaran a "optimizar" el codigo de alguna manera, para hacerlo un poco más sencillo, tampoco consigo usar las funciones coche() bici() y moto() ya que cuando las llamo en la función conducir() al ejecutar el código
me dice (depende de cual sea, digamos coche()) que el nombre coche() no está definido o algo así.
Esto es lo que sale:
1
2
3
4
5
File "C:/Users/Pollastre/PycharmProjects/prueba/prueba4.py", line 51, in <module>
vehi.conducir()
File "C:/Users/Pollastre/PycharmProjects/prueba/prueba4.py", line 15, in conducir
el_coche = coche()
NameError: global name 'coche' is not defined
PD: EL CÓDIGO NO ESTÁ COMPLETO
Valora esta pregunta


0