• Viernes 29 de Marzo de 2024, 12:03

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - sergio2

Páginas: [1]
1
Python / Funcion Q Busca En Dos Clases
« en: Lunes 14 de Enero de 2008, 20:56 »
Hola
me ha vuelto a surgir una duda

imaginemos q tengo un libro llamado juan
con 3 recetas , en cada receta viene el dato de las calorias

otro libro llamado pepe
con 2 recetas y sus correspondientes calorias

pues me gustaria hacer una funcion donde yo ponga (pepe 200)
y me dice q receta tiene <= de 200 calorias dentro del libro pepe

y lo mismo si pongo (juan 200)


por ejemplo



class Receta:

    def __init__(self, nombre):
        self.nombre_plato = nombre
        self.cantidad_calorias =0



    def __str__ (self):
          representación = "NOMBRE DEL PLATO: " +  self.nombre_plato  + '\n'
          representación += "CANTIDAD DE CALORÍAS: " + str(self.cantidad_calorias) +'\n'
          return representación

    def proporcionar_calorias (self, calorias):
         self.cantidad_calorias =(calorias)


class Libro_Recetas():
     def __init__(self, libro):
         self.nombre_libro = libro
         self.recetas = []

   
     def __str__ (self):
         representación = "PROPIETARIO DEL LIBRO: " +  self.nombre_libro +'\n'
         representación += "RECETAS DEL LIBRO DE " + self.nombre_libro.upper() + ": " +'\n'
         representación += str(self.recetas) +'\n'
         return representación


     def incluir_recetas_al_libro (self, receta):
        self.recetas.append(receta)



si pongo


h=Libro_Recetas("juan")
h.incluir_recetas_al_libro("Tarta_de_Manzana")
h.incluir_recetas_al_libro("Tarta_de_limon")
h.incluir_recetas_al_libro("Tarta_de_pera")
print h

sale
##PROPIETARIO DEL LIBRO: juan
##RECETAS DEL LIBRO DE JUAN:
##['Tarta_de_Manzana', 'Tarta_de_limon', 'Tarta_de_pera']


a=Receta("Tarta_de_Manzana")
a.proporcionar_calorias(100)

print a

##NOMBRE DEL PLATO: Tarta_de_Manzana
##CANTIDAD DE CALORÍAS: 100

b=Receta("Tarta_de_limon")
b.proporcionar_calorias(200)

print b

##NOMBRE DEL PLATO: Tarta_de_limon
##CANTIDAD DE CALORÍAS: 200
##

c=Receta("Tarta_de_pera")
c.proporcionar_calorias(300)

print c

##NOMBRE DEL PLATO: Tarta_de_pera
##CANTIDAD DE CALORÍAS: 300
##
##

ahora viene lo q no me sale

hago esto

##
##  def plato_maximo_calorias (self, nombre, calorias):
##           if nombre == self.nombre_libro:
##             ## if self.cantidad_calorias <= calorias:
##            
##               ## print self.nombre_plato
##                  

pero no sale pq un dato tiene q buscarlo en la clase receta y otro dato en la clase libro_recetas
y no se como es para q busque cada dato donde debe
alguien me puede echar una mano?

2
Python / Unir Dos Funciones En Una
« en: Sábado 5 de Enero de 2008, 10:34 »
supongamos q tengo una receta de cocina,  cada plato contiene una lita de ingredientes

una llamada ingredientes solidos (turron, manteca, cacao)

y otra con llamada ingredientes liquidos (agua, leche)

ahora quiero crear una funcion para q al poner un ingrediente me salga el nombre del plato q lo contiene



 def buscar_receta_con_ingredientes_liquidos (propio, ingrediente):
        for elemento in propio.ingredientes_liquidos:
            if elemento == ingrediente:
               print propio.nombre_plato
               break


    def buscar_receta_con_ingredientes_solidos (propio, ingrediente):
        for elemento in propio.ingredientes_solidos:
            if elemento == ingrediente:
               print propio.nombre_plato
               break


        bueno, hay alguna forma de unir las dos funciones? meter un ingrediente y q me busca a la vez en los ingredientes solidos y liquidos (por mucho or/and q le meto no me da resultado)


y otra cosa, si yo quiero imprimir una frase del tipo

a =input("introduce un nombre:")
print "hola:" ,a


como es para darle un color a "a"

3
Python / Presentacion En Pantalla
« en: Jueves 3 de Enero de 2008, 11:49 »
Hola

Tengo una duda, estoy empezando con esto del python y no se como representar los resultados en pantalla

Tengo este ejemplo para crear una base de datos sobre películas y luego añadirles premios a dichas peliculas


class Pelicula:
    def __init__ (propio, tit):
        propio.titulo = tit
        propio.director = ''
        propio.actor = ''
        propio.actriz = ''
   
    def __str__ (propio):
        return 'Titulo: ' + propio.titulo + '\n' + \
               'Director: ' + propio.director + '\n' + \
               'Actor protagonista: ' + propio.actor + '\n' + \
               'Actriz protagonista: ' + propio.actriz
   
    def añadir_director (propio, nombre):
        propio.director = nombre
   
    def añadir_actor (propio, nombre):
        propio.actor = nombre
   
    def  añadir_actriz (propio, nombre):
        propio.actriz = nombre

class Pelicula_Premiada (Pelicula):
    def __init__ (propio, tit):
        propio.premios = []
        Pelicula.__init__(propio, tit)
   
    def premiar (propio, tipo, categ):
        propio.premios.append((tipo, categ))
   
    def mostrar_premios (propio):
        for premio in propio.premios:
            print premio[0], 'a', premio[1]
        print premios_pelicula
   
    def contar_premios (propio, tipo):
        cantidad = 0
        for premio in propio.premios:
            if premio[0] == tipo:
                cantidad = cantidad + 1
        return cantidad


bueno, ahora viene la parte en que me lio, para representarlo en pantalla


a=Pelicula("ROSITA")
print a

pues me sale esto
Titulo: ROSITA
Director:
Actor protagonista:
Actriz protagonista:

Hasta aqui bien, seguimos

a.añadir_director("PEPE")
a.añadir_actriz("ANA")
a.añadir_actor("JUAN")

print a

Titulo: ROSITA
Director: PEPE
Actor protagonista: JUAN
Actriz protagonista: ANA

Vamos bien, pero ahora para utilizar la clase película premiada me pierdo
No se que tengo q escribir para que me añada los premios a las peliculas

Alguna ayuda?
Gracias

Páginas: [1]