def saisir_facture(self): for widget in self.frame_menu.winfo_children(): widget.pack_forget() def valider(): #date du jour Connexion.saisie_facture(self.entree_date.get(), self.entree_client.get(), self.entree_facture.get(), self.entree_produit.get(), self.entree_quantite.get()) self.entrees_frame = tk.Frame(self.frame_menu, bg=color_ids['Bleu']) self.entrees_frame.pack() self.facture_frame = tk.Frame(self.frame_menu, bg=color_ids['Bleu']) self.facture_frame.pack() self.entree_facture = ttk.Combobox(self.entrees_frame, values=list(Connexion.lister_factures()), state="normal") self.entree_facture.grid(row = 0 , column = 0, padx=20, pady=30) self.entree_client = ttk.Combobox(self.entrees_frame, values=list(Connexion.get_clients()), state="readonly") self.entree_client.grid(row = 0 , column = 1, padx=20, pady=30) self.entree_produit = ttk.Combobox(self.entrees_frame, values=list(Connexion.get_produits()), state="readonly") self.entree_produit.grid(row = 0 , column = 2, padx=20, pady=30) self.entree_quantite = tk.Entry(self.entrees_frame, bg='white', width=20, justify='center', font=('Helvetica', '10')) self.entree_quantite.grid(row = 0 , column = 3, padx=20, pady=30) self.entree_date = tk.Entry(self.entrees_frame, bg='white', width=20, justify='center', font=('Helvetica', '10')) self.entree_date.grid(row = 0 , column = 4, padx=20, pady=30) self.now = datetime.date.today() self.date_facture = self.now.strftime("%Y-%m-%d") self.entree_date.insert(0, self.date_facture) self.boutton_factures = tk.Button(self.entrees_frame, height=2, width=13, bg=color_ids['Jaune'], bd=0, font=('Helvetica', '11'), text="Valider", command=valider) self.boutton_factures.grid(row = 0 , column = 5, padx=20, pady=30)
def afficher_arrets(self, ligne): arrets_liste = Connexion.get_arrets(ligne) bus_liste = Connexion.get_bus_ligne(ligne) for widget in self.frame_arrets_bus.winfo_children(): widget.destroy() arrets_label = tk.Label(self.frame_arrets_bus, text="Arrets", bg=color_ids['BG'], font=('Helvetica', '20', 'underline')) bus_label = tk.Label(self.frame_arrets_bus, text="Bus", bg=color_ids['BG'], font=('Helvetica', '20', 'underline')) arrets_label.grid(row=0, column=1, padx=50) bus_label.grid(row=0, column=2, padx=50) for i, arret in enumerate(arrets_liste, 1): arret = tk.Label(self.frame_arrets_bus, text=arret, bg=color_ids['BG'], font=('Helvetica', '12')) arret.grid(row=i, column=1) for i, bus in enumerate(bus_liste, 1): bus = tk.Label(self.frame_arrets_bus, text=bus, bg=color_ids['BG'], font=('Helvetica', '12')) bus.grid(row=i, column=2)
def valider(): #date du jour Connexion.saisie_facture(self.entree_date.get(), self.entree_client.get(), self.entree_facture.get(), self.entree_produit.get(), self.entree_quantite.get())
def formulaire(): if request.method == 'POST': don = request.form['don'] name = request.form['name'] fname = request.form['fname'] adresse = request.form['adresse'] mail = request.form['mail'] if not don: flash('Veuillez renseigner un don!') elif not name: flash('Veuillez renseigner un nom') elif not fname: flash('Veuillez renseigner un prénom') elif not adresse: flash('Veuillez renseigner un adresse') elif not mail: flash('Veuillez renseigner un mail') else: Connexion.open_db() Connexion.don.insert_one({"name":name, "fname":fname, "adresse":adresse, "mail":mail, "don":int(don)} ) Connexion.close_db() return redirect(url_for('index')) return render_template('formulaire.html')
def ajouter_modifier_bus(self): if self.check_entrees() == True: Connexion.ajouter_modifier_bus( self.bus_numero_menu.get(), self.bus_immatriculation_entree.get(), self.bus_nb_places_entree.get(), self.id_ligne(self.bus_ligne_menu.get())) self.menu_bus()
def __init__(self, joueurs): self.fin_jeu = False self.joueurs = joueurs self.themes = Connexion.get_themes() self.questions = Connexion.get_questions() self.questions = self.questions * 5 if len(self.joueurs) > 0: random.shuffle(self.joueurs) self.lancer_jeu()
def valider(): #date du jour valide = Connexion.saisie_facture(self.entree_date, self.entree_client, self.entree_facture, self.entree_produit, self.entree_quantite)
def afficher(): for widget in facture_frame.winfo_children(): widget.grid_forget() result = Connexion.get_facture(entree_client.get(), entree_date.get()) produit_label = tk.Label(facture_frame, text="Produits", bg=color_ids['Bleu'], font=('Helvetica', '20', 'underline')) sites_label = tk.Label(facture_frame, text="Quantités", bg=color_ids['Bleu'], font=('Helvetica', '20', 'underline')) produit_label.grid(row=0, column=0, padx=50) sites_label.grid(row=0, column=1, padx=50) for i, values in enumerate(result, 1): produit_label = tk.Label(facture_frame, font=('Helvetica', '13'), bg=color_ids['Bleu'], text=values[0]) produit_label.grid(row=i, column=0) quantite_label = tk.Label(facture_frame, font=('Helvetica', '13'), bg=color_ids['Bleu'], text=values[1]) quantite_label.grid(row=i, column=1)
def remplir_entree_date(self): dates = Connexion.get_date_factures(entree_client.get()) if len(dates) > 0: entree_date.set('Choisir une date') else: entree_date.set('Aucune factures') entree_date.configure(values=dates)
def afficher_produits(self): for widget in self.frame_menu.winfo_children(): widget.pack_forget() produits_frame = tk.Frame(self.frame_menu, bg=color_ids['Bleu']) produits_frame.pack() produits_site = Connexion.get_produits() produit_label = tk.Label(produits_frame, text="Produits", bg=color_ids['Bleu'], font=( 'Helvetica', '20', 'underline')) sites_label = tk.Label(produits_frame, text="Sites", bg=color_ids['Bleu'], font=( 'Helvetica', '20', 'underline')) produit_label.grid(row=0, column=0, padx=50) sites_label.grid(row=0, column=1, padx=50) for i, (key, value) in enumerate(produits_site.items(), 1): produit = tk.Label(produits_frame, text=key, bg=color_ids['Bleu'], font=('Helvetica', '12')) produit.grid(row=i, column=0) sites = tk.Label(produits_frame, text=value, bg=color_ids['Bleu'], font=('Helvetica', '12')) sites.grid(row=i, column=1)
def connect(self, host="127.0.0.1", port=1234): self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.sock.settimeout(5) try: self.sock.connect((host, port)) except ConnectionRefusedError: self.printMessage(tr("error.connexion.refused")) return except socket.timeout: self.printMessage(tr("error.connexion.refused")) return except OSError: self.print(tr("error.system")) self.printMessage(tr("connected.to") + str(self.sock.getpeername())) client_thr = Connexion(self.sock, self.sock.getpeername(), self.turing, self.printMessage, self.rdyWrite) self.sock_thread = client_thr client_thr.start()
def sortedConnexions(self): sortedConnexionList = [] for connex in self.connexionList: indexFrom = self.getNeuronPosition(connex.getFrom()) indexTo = self.getNeuronPosition(connex.getTo()) sortedConnexionList.append( Connexion(indexFrom, indexTo, connex.getW())) sortedConnexionList = sorted(sortedConnexionList, key=lambda c: (c.getFrom(), c.getTo())) return sortedConnexionList
def saisir_client(self): for widget in self.frame_menu.winfo_children(): widget.pack_forget() display_frame = tk.Frame(self.frame_menu, bg=color_ids['Bleu']) display_frame.pack() def inserer(): Connexion.inserer_clients(type_liste.get(), entree_nom.get( ), entree_adresse.get(), entree_ville.get(), pays_liste.get()) self.saisir_client() for i, text in enumerate(['Nom', 'Type', 'Adresse', 'Ville', 'Pays']): label = tk.Label(display_frame, text=text, bg=color_ids['Bleu'], font=( 'Helvetica', '12', 'underline')) label.grid(row=0, column=i) entree_nom = tk.Entry(display_frame, bg='white', width=20, justify='center', font=('', '9')) entree_nom.grid(row=1, column=0, padx=10, pady=15) type_liste = ttk.Combobox(display_frame, width=20, values=list( Connexion.get_types()), state="readonly") type_liste.set('Chosir un type') type_liste.grid(row=1, column=1, padx=10, pady=15) entree_adresse = tk.Entry( display_frame, bg='white', width=20, justify='center', font=('', '9')) entree_adresse.grid(row=1, column=2, padx=10, pady=15) entree_ville = tk.Entry(display_frame, bg='white', width=20, justify='center', font=('', '9')) entree_ville.grid(row=1, column=3, padx=10, pady=15) pays_liste = ttk.Combobox(display_frame, width=20, values=list( Connexion.get_pays()), state="readonly") pays_liste.set('Chosir un pays') pays_liste.grid(row=1, column=4, padx=10, pady=15) but_saisir_client = tk.Button(display_frame, height=2, width=13, bg=color_ids['Jaune'], bd=0, font=( 'Helvetica', '11'), text="Saisir", command=inserer) but_saisir_client.grid(row=2, columnspan=5, padx=20, pady=10)
def createConnexion(self): neuron1 = random.randint(0, self.nbNeurons - 1) neuron2 = random.randint(0, self.nbNeurons - 1) # this is not forbidden to imagine getting a feedback on how much the network controls some output, # so next line is commented # while self.neuronList[neuron1].amIOutput() : neuron1 = random.randint(0,nbNeurons-1) while type(self.neuronList[neuron2]) is InputNeuron: neuron2 = random.randint(0, self.nbNeurons - 1) self.connexionList.append( Connexion(self.neuronList[neuron1], self.neuronList[neuron2])) self.nbConnexions += 1
def __init__(self, nbNeurons=5, nbConnexions=5, nbInputsNeurons=2, nbOutputsNeurons=1, genes=None): self.fitness = 0.0 if (genes != None): neuronGenes = genes[0] connexionGenes = genes[1] # print(neuronGenes) # print(connexionGenes) self.nbNeurons = 0 self.neuronList = [] self.inputNeuronList = [] self.outputNeuronList = [] self.connexionList = [] for neuronGene in neuronGenes: neuron = None if neuronGene[1] == 'n': neuron = Neuron(self.nbNeurons, bias=neuronGene[0]) elif neuronGene[1] == 'i': neuron = InputNeuron(self.nbNeurons, bias=neuronGene[0]) self.inputNeuronList.append(neuron) elif neuronGene[1] == 'o': neuron = OutputNeuron(self.nbNeurons, bias=neuronGene[0]) self.outputNeuronList.append(neuron) self.neuronList.append(neuron) self.nbNeurons += 1 for connGene in connexionGenes: fromNeuron = self.neuronList[connGene[0]] toNeuron = self.neuronList[connGene[1]] self.connexionList.append( Connexion(fromNeuron, toNeuron, connGene[2])) self.nbConnexions = len(self.connexionList) self.species = str(self.nbNeurons) + "_" + str(self.nbConnexions) else: self.nbNeurons = 0 self.neuronList = [] self.inputNeuronList = [] self.outputNeuronList = [] self.nbConnexions = 0 self.connexionList = [] self.species = str(self.nbNeurons) + "_" + str(self.nbConnexions) for idInputNeuron in range(nbInputsNeurons): self.createNeuron("input") for idNeuron in range(nbNeurons - nbInputsNeurons - nbOutputsNeurons): self.createNeuron() for idOutputNeuron in range(nbOutputsNeurons): self.createNeuron("output") for idConnexion in range(nbConnexions): self.createConnexion() self.clean()
def afficher_facture(self): for widget in self.frame_menu.winfo_children(): widget.pack_forget() def remplir_entree_date(self): dates = Connexion.get_date_factures(entree_client.get()) if len(dates) > 0: entree_date.set('Choisir une date') else: entree_date.set('Aucune factures') entree_date.configure(values=dates) def afficher(): for widget in facture_frame.winfo_children(): widget.grid_forget() result = Connexion.get_facture( entree_client.get(), entree_date.get()) produit_label = tk.Label(facture_frame, text="Produits", bg=color_ids['Bleu'], font=( 'Helvetica', '20', 'underline')) sites_label = tk.Label(facture_frame, text="Quantités", bg=color_ids['Bleu'], font=( 'Helvetica', '20', 'underline')) produit_label.grid(row=0, column=0, padx=50) sites_label.grid(row=0, column=1, padx=50) for i, values in enumerate(result, 1): produit_label = tk.Label(facture_frame, font=( 'Helvetica', '13'), bg=color_ids['Bleu'], text=values[0]) produit_label.grid(row=i, column=0) quantite_label = tk.Label(facture_frame, font=( 'Helvetica', '13'), bg=color_ids['Bleu'], text=values[1]) quantite_label.grid(row=i, column=1) entrees_frame = tk.Frame(self.frame_menu, bg=color_ids['Bleu']) entrees_frame.pack() facture_frame = tk.Frame(self.frame_menu, bg=color_ids['Bleu']) facture_frame.pack() entree_client = ttk.Combobox(entrees_frame, width=50, values=list( Connexion.get_clients()), state="readonly") entree_client.set('Chosir un client') entree_client.bind('<<ComboboxSelected>>', remplir_entree_date) entree_client.grid(row=0, column=0, padx=20, pady=30) entree_date = ttk.Combobox(entrees_frame, state="readonly") entree_date.grid(row=0, column=1, padx=20, pady=30) boutton_factures = tk.Button(entrees_frame, height=2, width=13, bg=color_ids['Jaune'], bd=0, font=( 'Helvetica', '11'), text="Afficher", command=afficher) boutton_factures.grid(row=0, column=2, padx=20, pady=30)
def run(self): """ Accept an incoming connection. Start a new Server thread that will handle the communication. """ if not self.__stop: self.printMessage( tr("server.starting").format(self.host, self.port)) while not self.__stop: if not self.sock: continue self.sock.settimeout(1) try: client_sock, client_addr = self.sock.accept() except socket.timeout: client_sock = None if client_sock: client_thr = Connexion(client_sock, client_addr, self.turing, self.printMessage, self.rdyWrite) self.sock_threads.append(client_thr) client_thr.start() self.close()
def afficher_sites(self): for widget in self.frame_menu.winfo_children(): widget.pack_forget() sites_frame = tk.Frame(self.frame_menu, bg=color_ids['Bleu']) sites_frame.pack() sites = Connexion.get_sites() sites_label = tk.Label(sites_frame, text="Sites", bg=color_ids['Bleu'], font=( 'Helvetica', '20', 'underline')) sites_label.grid(row=0, column=1, padx=50) for i, value in enumerate(sites, 1): label = tk.Label(sites_frame, text=value, bg=color_ids['Bleu'], font=('Helvetica', '12')) label.grid(row=i, column=1)
def connexionPossible(self): if not (self.phenotype.estComplet()): tries = 0 noeuds = self.idToPos.keys() noeudsSansEntree = [ i for i in noeuds if (i not in range(self.nb_e)) ] e = ut.randomPick(noeuds) s = ut.randomPick(noeudsSansEntree) c = self.genome.entreeSortieToCon(e, s) while tries < 10 and c != None and c.activation: e = ut.randomPick(noeuds) s = ut.randomPick(noeudsSansEntree) c = self.genome.entreeSortieToCon(e, s) tries += 1 if tries < 10: if c != None: return c else: return Connexion(e, s, 1)
def __init__(self, master): self.master = master self.master.title("Breizhibus") self.master.geometry('900x600') self.master.minsize(900, 600) self.master.configure(bg=color_ids['BG']) label = tk.Label(self.master, font=('Helvetica', '50'), fg='#ce0033', bg=color_ids['BG'], text="Breizhibus") label.pack(fill='x', side='top') self.bottom_frame = tk.Frame(self.master, bg=color_ids['BG']) self.bottom_frame.pack(side='bottom') nom_auteur = tk.Label(self.bottom_frame, font=('Helvetica', '13'), fg='#ce0033', bg=color_ids['BG'], text="Created by Pereg Hergoualc'h") nom_auteur.grid(row=0, column=1, sticky='s', padx=125, pady=10) self.boutton_menus = tk.Button(self.bottom_frame, height=2, width=13, bg='#ce0033', bd=0, font=('Helvetica', '11'), text="Menu des bus", command=self.menu_bus) self.boutton_menus.grid(row=0, column=2, padx=125, pady=10) self.frame_menu = tk.Frame(self.master, bg=color_ids['BG']) self.frame_menu.pack() self.lignes = Connexion.get_lignes()
def clean(self): newconnexionList = [] # print self.connexionList for connexOrig in self.connexionList: frOrig = connexOrig.getFrom() toOrig = connexOrig.getTo() new_w = connexOrig.getW() for connex in self.connexionList: if connex is not connexOrig: fr = connex.getFrom() to = connex.getTo() if fr is frOrig and to is toOrig: #the two connexions link the same neurons new_w += connex.getW() add = True for new_connex in newconnexionList: fr = new_connex.getFrom() to = new_connex.getTo() if fr is frOrig and to is toOrig: add = False if add: newconnexionList.append(Connexion(frOrig, toOrig, new_w)) self.connexionList = newconnexionList self.nbConnexions = len(newconnexionList)
async def reponse(target: str, tags: str): return co.get_truc(target, tags)
def supprimer_bus(self): Connexion.supprimer_bus(self.bus_numero_menu.get()) self.menu_bus()
def menu_bus(self): self.bus = Connexion.get_all_bus() self.boutton_menus.configure(text="Menu des lignes", command=self.menu_lignes) for widget in self.frame_menu.winfo_children(): widget.destroy() frame_bus = tk.Frame(self.frame_menu, bg=color_ids['BG']) frame_bus.pack() frame_edit = tk.Frame(self.frame_menu, bg=color_ids['BG']) frame_edit.pack() numero_label = tk.Label(frame_bus, text="Numero", bg=color_ids['BG'], font=('Helvetica', '15', 'underline')) immatriculation_label = tk.Label(frame_bus, text="Immatriculation", bg=color_ids['BG'], font=('Helvetica', '15', 'underline')) nb_places_label = tk.Label(frame_bus, text="Nombre places", bg=color_ids['BG'], font=('Helvetica', '15', 'underline')) bus_ligne_label = tk.Label(frame_bus, text="Ligne", bg=color_ids['BG'], font=('Helvetica', '15', 'underline')) numero_label.grid(row=0, column=1, padx=35, ipady=10) immatriculation_label.grid(row=0, column=2, padx=35) nb_places_label.grid(row=0, column=3, padx=35) bus_ligne_label.grid(row=0, column=4, padx=35) for i, (key, values) in enumerate(self.bus.items(), 1): bus_name = tk.Label(frame_bus, text=key, bg=color_ids['BG'], font=('Helvetica', '12')) bus_name.grid(row=i, column=1) bus_immatriculation = tk.Label(frame_bus, text=values['immatriculation'], bg=color_ids['BG'], font=('Helvetica', '12')) bus_immatriculation.grid(row=i, column=2) bus_nb_places = tk.Label(frame_bus, text=values['nb_places'], bg=color_ids['BG'], font=('Helvetica', '12')) bus_nb_places.grid(row=i, column=3) bus_nom_ligne = tk.Label(frame_bus, text=values['nom_ligne'], bg=color_ids['BG'], font=('Helvetica', '12')) bus_nom_ligne.grid(row=i, column=4) self.bus_numero_menu = ttk.Combobox(frame_edit, values=list(self.bus.keys())) self.bus_numero_menu.bind('<<ComboboxSelected>>', self.remplir_champs) self.bus_numero_menu.grid(row=0, column=1, padx=20, pady=30, sticky='s') self.bus_immatriculation_entree = tk.Entry(frame_edit, bg='white', width=20, justify='center', font=('Helvetica', '10')) self.bus_immatriculation_entree.grid(row=0, column=2, padx=20, pady=30, sticky='s') self.bus_nb_places_entree = tk.Entry(frame_edit, bg='white', width=20, justify='center', font=('Helvetica', '10')) self.bus_nb_places_entree.grid(row=0, column=3, padx=20, pady=30, sticky='s') self.bus_ligne_menu = ttk.Combobox(frame_edit, values=list(self.lignes.values())) self.bus_ligne_menu.grid(row=0, column=4, padx=20, pady=30, sticky='s') self.boutton_modifier_bus = tk.Button( frame_edit, height=2, width=13, bg=color_ids['Vert'], bd=0, font=('Helvetica', '11'), text="Ajouter/Modifier", command=self.ajouter_modifier_bus) self.boutton_modifier_bus.grid(row=1, column=2) self.boutton_supprimer_bus = tk.Button(frame_edit, height=2, width=13, bg=color_ids['Rouge'], bd=0, font=('Helvetica', '11'), text="Supprimer", command=self.supprimer_bus) self.boutton_supprimer_bus.grid(row=1, column=3)
def donateurs(): leo = Connexion.leonardo() brad = Connexion.brad() donator = Connexion.donator() return render_template('donateurs.html', leo=leo, brad=brad, donator=donator)
def index(): donate = Connexion.compteur() return render_template('index.html', donate = donate)
def ajouterConnexion(self, entree, sortie, poids, innov): assert innov not in self.connexions, "Ce numero d'innovation est déja attribué : " + str( innov) + " Connexion :" + str(Connexion(entree, sortie, poids)) self.connexions[innov] = Connexion(entree, sortie, poids)
def generer(self): indInnov = 0 for i in range(self.nb_entree): for j in range(self.nb_entree, self.nb_entree + self.nb_sortie): self.connexions[indInnov] = Connexion(i, j, norm.rvs()) indInnov += 1
if len(c_matches) < capacities[c]: student_matching[s] = c company_matching[c] += [s] else: # s_rank is a given student's rank within a company's preference list s_rank = c_p.index(s) worst_rank = np.max([c_p.index(i) for i in c_p if i in c_matches]) worst_match = c_p[worst_rank] if s_rank < worst_rank: company_matching[worst_match] = None c_matches.remove(worst_match) student_picks[worst_match].remove(c) students.append(worst_match) company_matching[s] = c c_matches += [s] else: c_p.remove(s) s_p.remove(c) return student_matching, company_matching student_picks = Connexion.get_students_picks() company_picks = Connexion.get_companies_picks() capacities = Connexion.get_capacities() student_matching, company_matching = matching(student_picks, company_picks, capacities) print("Students: ",student_matching) print("Companies: ", company_matching)
def inserer(): Connexion.inserer_clients(type_liste.get(), entree_nom.get( ), entree_adresse.get(), entree_ville.get(), pays_liste.get()) self.saisir_client()