Tu as oublié une variable importante: la température de la pizza!

Si la pizza est encore chaude alors oui intérêt.pizza>intérêt.présentation
par contre si la pizza est froide il faut tester si la présentation m'apprend quelque chose ou si elle vole trop loin au dessus-de ma tête: dans le deuxième cas elle risque encore de perdre même face à une pizza froide.

Par ailleurs Joeri n'a pas défini clairement le type de la variable "développeuse" qui déclenche l'événement "boissons gratuites": il faut que ce soit son métier ou il suffit qu'elle sache écrire "hello world" en python?
Ou même en Scratch ?
http://www.commitstrip.com/en/2013/10/07/la-premiere-chose-a-apprendre/


On 10/10/2013 19:21, Alioune Dia wrote:
Hi

Une brioche doree , en plus d'accueillir des gens , qui vont proposer des
prensentations , qui vont commencer exactement a 19 heures ,  et j'imagine
  que a  20  heures ont va manger des Pizzas :) et parler de sujets extras
comme le Pycon-africa :) , Hein Geno :) ,

alors comment doit on ecrire tout  ca en Python ?

En plus de la class BriocheDoree qui va acceillir , distribtions Pizzas ,
et .....
Les membres de DakarLug qui viendront a la brioche doree le Dimanche
13  Novembre a 19 heures 30
.
1 .  Si presentation n'est pas vide , la personne propose de faire une
presentation
Exemple : Waly Ndiaye fait une presentation sur PyUnicode dont son attribut
presentation  = "PyUnicode"
2 . Si un membre est venu pour suivre une presentation alors son attribut
presentation  ="" et
leaner = 1
3. Si la personne est venu juste pour bouffer nos pizzas alors
presentation = "" et learner  = 0


L'exection de ca :
__________________

['alioune', '0']
['Lien', '1']
['Pat', '1']
['Elwan', 'PyUnicode']


L'exection donnera:
___________________

<Mamber presentation =0  , name =alioune , >
gain = []
<Mamber presentation =1  , name =Lien , >
gain = ["'PyUnicode'"]
<Mamber presentation =1  , name =Pat , >
gain =["'PyUnicode'"]
<Mamber presentation ='PyUnicode'  , name =Elwan , >
[]

On conclut que Alioune qui ete juste venu pour manger de Pizzas
aura comme gains = [] :) , Lien Rag et Patt qui sont venu suivre
la presention [PyUnicode] de Elwan ont des gains de gain =["'PyUnicode'"]


Tellement fier de mon freestyle_brioche.py que je viens de la
mettre sut git .

https://github.com/Dakarlug/freestyle_brioche/blob/master/freestyle_brioche.py



import Queue, thread, datetime, time

class BriocheDoree:
   __name__ = "MerMoz Dakar"

   def __init__(self , args=None):
     self.members  = []
     # Allons nous avoir 50 pizzas , Joeri :), Alioune :) ......
     self.pizzas        = 50

     # les pizzas waiters
     self.pizza_waiters =Queue.Queue()

     # les speakers
     self.speakers =Queue.Queue()

     # les learners list not queue
     self.learners =[]

   def add_member(self, member):
      # ajouter un membre
      self.members.append(member)

   def del_member(self, member):
     #  Un membre doit pouvoir quitter la brioche doree a tout instant
     # avant que sa femme ne vienne la chercher :)
     self.members.remove(member)

   def entry(self):
     # entree de la brioche doree les membres sont
     # accuelli ici  a MerMoz :)

     # starting theard before starting entry

     self.event_starting()
     #

     while True:
       raw = raw_input ("Accueil Brioche doree :\n\
          Pesentateur : Nom, Presentation \n\
          Learners :Nom,1    : \n\
          Pizzas Waiters :Nom , 0:\n\
         ")
       if raw =="stop":
         # stop
         # evitez d'arreter l'event sans que les pizzas ne soient
         # distribués sinion , les pizza_waiters vont tous saccager
         # stop apres que les pizzas soit distibues.

         self.start_event = False
         break

       m = Member(raw)
       print m
       # Add to member list
       self.members.append(m)

       # lorsque un membre ne fait rien d'autre  que attendre les pizzas
       # met le dans la pile  pizza_waiters

       if m.presentation == "0":
         self.pizza_waiters.put(m)

        # lorque un gas vient pour suivre les prensentations  des speakers:
       if m.presentation == "1":
         self.learners.append(m)

       else:
         self.speakers.put(m)
       # lorsque un membre prose une presentation , le mettre dans la
       # pile des speakers

   def event_starting(self):
     # Joeri a dit que l'evenment commence a 19  heures 30 le dimanche donc
     # pas  avant :
     thread.start_new_thread(self.starting_event , ())

   def starting_event(self):
     while self.start_event:

       try:
         #print "starting events"
         # PIZZA WAITER
         try:
           # get nowait
           a_pizza_waiter = self.pizza_waiters.get(False)
         except Queue.Empty:
            a_pizza_waiter =None


         # un pizza waiter ne fait rien d'autre que bouffer :)
         # il s'en tape des presentations , Lien Rag  :)

         # Il faut tester si il est l'heure de donner des pizzas , a 20
h 30 ? c'est bon
         # et lui donner sa part :)  :

         # part  = Nombre  de Pizzas disponibles / (speakers + learners
+ pizza_waiters_queue)


         # la distrubtion des Pizzas commence a cette heure
         if datetime.datetime.now()> datetime.datetime(2013, 10, 10, 18, 58):
             part   = self.pizzas / len(self.members)

             # Moins il y'aura de personnes presentes a la brioche plus
il y'aura de
             # parts de Pizzas , Huuuuum :) . c'est le souhait des pizzas 
waiters
             # Hein Lien :)
             if a_pizza_waiter:
               a_pizza_waiter.gains.append("%s part de Pizzas" % part )

         # SPEAKERS

         # un speaker vient donner une presention , alors il faut
extraire le contenu
         # de la presentation et le donner a un LEARNER
         try:
           # get nowait
           speaker= self.speakers.get(False)
         except Queue.Empty:
            speaker =None

         if speaker:
           presentation = speaker.presentation
           for learner in self.learners:
             if presentation not in learner.gains:
               learner.gains.append(presentation)


       except:
         import traceback
         print traceback.format_exc()

       time.sleep(2)
     # event stopped , est sans doute 20 heures passes
     #print "stopped event"




   def  stop_event(self):
     # Lorque a 20 heures , on doit finaliser l'evenement avant que Madame Dia
     # se pointe a la Brioche doree pour me tirer les oreils
     #if datetime.datetime.now()> datetime.datetime(2013, 10, 10, 18, 10):
     self.start_event = False

   def start_event(self):
     # Demarrage  hostilites (Presentions, manageurs de Pizzas , les apprenants)
     self.start_event  =True

   def reporting(self):
     # au sortir de cet evenement qu'est ce que un membre
     # a gagne , juste des Pizzas ? , a t'il benefie de l'expertis d'Elwan
     # sur PyUnicode , De Joerie avec Jekyll?

     for m in self.members:
       print m
       print m.gains


"""
Les membres de DakarLug qui viendront a la brioche doree le Dimanche
13  Novembre a 19 heures 30
.
1 .  Si presentation n'est pas vide , la personne propose de faire une
presentation

Exemple : Waly Ndiaye fait une presentation sur PyUnicode dont son attribut
presentation  = "PyUnicode"

2 . Si un membre est venu pour suivre une presentation alors son attribut
leaner = 1

3. Si la personne est venu juste pour bouffer nos pizzas alors presentation = ""
et learner  = "0"

"""
class Member:
   def __init__(self, raw):

     # raw.split()
     args  = raw.split(",")
     print args
     if len(args)!=2:
        raise ValueError("Erreur saisie ")
     # speaker or learner :
     if args[1].strip() == "1":
       # learner:
       self.presentation = "1"
     elif args[1].strip() == "0":
       # pizzas waiters
       self.presentation = "0"
     else:
       self.presentation = args[1]
     self.name = args[0]

     # Qu'est ce que tu as gagne ,  a lissue de l'evenement
     # Brioche doree
     self.gains =[]

   def what_gain(self):
     """
      ce que le membre qui est venu a la brioche dorée a gagne au sortir
     de  cet evenement
     """
     print "%s a  appris a la fin de cette presentation"
     for gain in gains:
       print gain

   def __str__(self):
     return "<Mamber presentation =%s  , name =%s , >"%(
       self.presentation, self.name)


if __name__ =="__main__":

    # accueil brioche doree
    m = BriocheDoree()
    m.start_event = True
    m.entry()

    # au sortir de cet evenement qu'est ce que un membre
    # a gagne , juste des Pizzas ? , a t'il benefie de l'expertis d'Elwan
    # sur PyUnicode , De Joerie avec Jekyll?
    m.reporting()

--
Ce message a été envoyé à la liste [email protected]
Gestion de votre abonnement : http://dakarlug.org/liste
Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
Le site du DakarLUG : http://dakarlug.org



--
Ce message a été envoyé à la liste [email protected]
Gestion de votre abonnement : http://dakarlug.org/liste
Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
Le site du DakarLUG : http://dakarlug.org

Répondre à