IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Créer des variable/objet


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité de passage
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2026
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Janvier 2026
    Messages : 1
    Par défaut Créer des variable/objet
    Bonjour, je débute sur python et j'essaie de me familiariser avec les classe et je me demande si c'est possible de créer des objet de manière dynamique par exemple : j'essaie de créer une fonction permettant à l'utilisateur de créer un nombre arbitraire de joueur pour un jeu. j'ai essayer de le faire avec une boucle for et un input de l'utilisateur pour le nombre de joueur mais maintenant je suis bloqué car je ne sais pas si c'est possible de créer des variable. voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    nb_player = int(input("combien de joueur"))
    for i in range(0,nb_player):
        name= input("non du joueur{}".format(i+1))

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 618
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 618
    Par défaut
    Si tu dois le faire manuellement, tu écriras naturellement les noms des joueurs dans une liste (ou un tableau).
    Coup de chance (ou pas), on peut utiliser des listes aussi en python https://docs.python.org/fr/3.14/tuto...tructures.html

    Je pense que n'importe quel tuto python en parle

  3. #3
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 806
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 806
    Par défaut
    Hello,

    En programmation, on ne crée presque jamais de variables nommées dynamiquement (comme joueur1, joueur2). À la place, on utilise des collections comme les listes ou les dictionnaires. Ces structures sont conçues pour stocker un nombre arbitraire d'éléments et les manipuler facilement via des boucles.

    On peut choisir entre listes et dictionnaires,
    • Listes si l'ordre des joueurs est important (par exemple pour gérer les tours de jeu).
    • Dictionnaires si vous voulez retrouver un joueur directement par son nom sans chercher dans toute la liste.
    Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
    La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 872
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 872
    Billets dans le blog
    1
    Par défaut
    Bonjour

    Il y a un point incontournable : chaque fois que tu fais name=... tu écrases le contenu précédent de la variable "name" par la nouvelle valeur. C'est le "=" (affectation) qui a cette action.
    Si c'est voulu et assumé (par exemple je n'ai plus besoin de ce qu'il y avait avant je veux faire autre chose) alors ok mais il semble que ce ne soit par le cas ici.

    Tu peux faire name1=...; name2=...; name3=... et ça marchera mais c'est peu pratique, peu évolutif et surtout peu pertinent. Comme l'a dit fred1599, quand on veut gérer plusieurs chose identiques on passe par des tableaux. Ainsi on peut ensuite créer un algorithme général qu'on appliquera à chaque item du tableau

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    nb_player = int(input("combien de joueur"))
    name=list()
     
    for i in range(1, nb_player + 1):
    	rep=input("non du joueur{}".format(i))
    	name.append(rep)
    Là par exemple, "rep" (variable intermédiaire) est effectivement écrasée à chaque tour mais ce n'est pas grave puisque son contenu a été, entre temps, récupéré et stocké dans la liste "name".

    Et maintenant on peut traiter chaque nom du tableau "name".
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for i in range(len(name)):
    	print("joueur {} : {} (nb lettres={})".format(i+1, name[i], len(name[i])))
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. Réponses: 0
    Dernier message: 12/05/2014, 17h17
  2. Réponses: 4
    Dernier message: 22/02/2010, 02h13
  3. [POO] Liste des variables de mon Objet
    Par hisy dans le forum Langage
    Réponses: 2
    Dernier message: 20/09/2006, 11h51
  4. Réponses: 1
    Dernier message: 30/12/2005, 11h57
  5. taille des variables ou des objets?
    Par BobLBricoleur dans le forum Flash
    Réponses: 4
    Dernier message: 27/12/2005, 15h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo