Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Mes questions en Python.
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Mes questions en Python.

Posté le 14/02/2016 18:23

Bonjours, je voudrai savoir si il est possible de faire ça :
nb_poisson [blue]=[/blue] [red]10[/red]
    [blue]for[/blue] i [blue]in[/blue] nb_poisson [blue]:[/blue]
    poisson[blue]+[/blue]str[blue]([/blue]i[blue])[/blue] [blue]=[/blue] [red]25[/red]



Précédente 1, 2, 3, 4, 5, 6, 7 ··· 9, 10, 11 Suivante
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 19/02/2016 08:09 | #


Au passage, est-ce vraiment pertinent d'appeler un attribut "pop" alors que celui-ci est communément utilisé en tant que méthode bien particulière de la plupart des classes ? (Dont les listes)
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir En ligne Administrateur Points: 24146 Défis: 170 Message

Citer : Posté le 19/02/2016 09:34 | #


Boh, tant que c'est un attribut on risque pas de confondre. Après on peut le changer de nom, c'est sûr qu'on évite tous les risques.
Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 19/02/2016 16:50 | #


Quelle méthode ???
Merci en tout cas.
Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Lephenixnoir En ligne Administrateur Points: 24146 Défis: 170 Message

Citer : Posté le 19/02/2016 16:51 | #


[color=auto;font-size:11px][b]pop(...)[/b]
    L.pop([index]) -> item -- remove and return item at index (default last).
    Raises IndexError if list is empty or index is out of range.
[/color]

Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 19/02/2016 16:53 | #


Ok merci
Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 19/02/2016 21:54 | #


Lephenixnoir a écrit :
Boh, tant que c'est un attribut on risque pas de confondre. Après on peut le changer de nom, c'est sûr qu'on évite tous les risques.

Je me suis quand même posé la question de savoir si il réimplémentait pop sur sa classe ou non. Après, oui il suffit de lire le code pour voir que c'est un attribut, mais c'est ce que je dis, c'est pas clair… x)
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 20/02/2016 14:09 | #


Hello
Si je peux faire ça :
self.pop = [poisson for poisson in self.pop if poisson.vie]

Est-ce-que je peux faire ça :
self.pop.remove(poisson for poisson in self.pop if poisson.age > 0)

Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Lephenixnoir En ligne Administrateur Points: 24146 Défis: 170 Message

Citer : Posté le 20/02/2016 14:11 | #


Non, ça n'a pas de sens.
La première expression est une définition de liste en compréhension, marquée par les crochets. En gros, on reconstitue la liste self.pop, mais en enlevant les poissons morts.

La deuxième expression ne veut strictement rien dire. Fais l'inverse plutôt, redéfinis self.pop en compréhension en inversant la condition :

self.pop = [poisson for poisson in self.pop if poisson.age <= 0]

Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 20/02/2016 14:15 | #


définition de liste en compréhension
Ça veux dire quoi
en inversant la condition
Pourquoi ???
Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Lephenixnoir En ligne Administrateur Points: 24146 Défis: 170 Message

Citer : Posté le 20/02/2016 14:18 | #


Ceci :
[poisson for poisson in self.pop if poisson.vie]

est une liste. Et rien d'autre.

L'appellation de « compréhension » vient d'un axiome mathématiques, qui dit grosso modo qu'étant donné un ensemble, on peut en sélectionner tous les éléments vérifiant une condition, et constituer un nouvel ensemble avec (et accessoirement que ce nouvel ensemble est unique). Ici, le principe est le même. La partie « for poisson in self.pop » se comporte comme une boucle qui parcourt la liste, et « if poisson.vie » est la condition d'ajout pour que l'élément soit intégré à la liste formée.

Ajouté le 20/02/2016 à 14:18 :
Gab.c a écrit :
en inversant la condition
Pourquoi ???

Parce que quand tu définis une liste en compréhension, tu indiques ce que tu y mets, pas ce que tu enlèves
Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 20/02/2016 14:28 | #


Le problème c'est que je voudrais enlever un nombre déterminé de poissons qui ont plus de 0 ans, mais pas tous les poissons qui ont plus 0 ans.
Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 20/02/2016 14:49 | #


À ce moment là, tu peux tronquer :

[poisson for poisson in self.pop if poisson.vie][5:]

Car
print(liste)
// [1, 2, 3, 4, 5, 6, 7, 8]
print( liste[5:] )
// [1, 2, 3, 4, 5]

Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 20/02/2016 14:51 | #


je n'ai pas compris
Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 20/02/2016 15:04 | #


Tu veux la liste des x poissons qui ont plus de 0 ans. Donc tu commence par créer la liste des poissons qui ont plus de 0 ans, et ensuite tu prend les x premiers.

Donc si tu veux en enlever y, tu prend les n-y premiers, n étant le nombre total de poissons.
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 20/02/2016 15:25 | #


J'ai trouvé la solution, merci Lephe et DS

Ajouté le 20/02/2016 à 15:37 :
from tkinter import *

class Interface(Frame):


    def __init__(self, fenetre, **kwargs):
        Frame.__init__(self, fenetre, width=500, height=500, **kwargs)
        self.pack(fill=BOTH)
        
        self.message = Label(self, text="{} poissons sont morts le mois dernier.\n \nVous possédez :\n  -{} $\n  -{} poissons\n  -{} aquariums\n  -{} rations de nouritures\n  -{} conseils".format(0,0,0,0,0,0 ))
        self.message.pack(side="left")
        
        self.bouton_quitter = Button(self, text="Quitter", fg="red", command=self.quit)
        self.bouton_quitter.pack(side="right")

Comment je fais pour placer un widget à un endroit précis Svp.
Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 20/02/2016 15:46 | #


http://www.tutorialspoint.com/python/tk_place.htm
Et RTFM…
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 20/02/2016 15:56 | #


Désolé mais je ne comprends vraiment rien
Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 20/02/2016 16:00 | #


[blue]widget[/blue].place(x=[blue]20[/blue], y=[blue]50[/blue])

En bleu, c'est ce qu'il faut que tu changes pour adapter à tes besoins.
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Gab.c Hors ligne Membre Points: 449 Défis: 0 Message

Citer : Posté le 20/02/2016 16:09 | #


Ça ne marche pas

Ajouté le 20/02/2016 à 16:22 :
Comment je fais pour décentraliser un texte.

Ajouté le 20/02/2016 à 16:28 :
Et pourquoi la taille de ma fenêtre s'adapte en fonction de ce qu'il y a dedans.
Au soir de votre vie, le seigneur ne comptera pas le nombre de fois ou vous êtes tombés, il comptera le nombre de fois ou vous vous êtes relevés.

Labyrinthe : un jeu de réflexe unique, élu Jeu Du Mois !!!
Dark storm En ligne Labélisateur Points: 11631 Défis: 176 Message

Citer : Posté le 20/02/2016 16:31 | #


Parce que c'est normal, c'est comme ça que fonctionne tkinter.

Pour aligner un texte à droite ou à gauche, c'est
self.message = Label( … , justify=Tkinter.LEFT)

Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Lephenixnoir En ligne Administrateur Points: 24146 Défis: 170 Message

Citer : Posté le 20/02/2016 16:31 | #


Euh... RTFM. La c'est du tkinter, c'est pas non plus la complexité même. Cherche un peu l'information.
Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Précédente 1, 2, 3, 4, 5, 6, 7 ··· 9, 10, 11 Suivante

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 104 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd