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 :

liste, Tuple, dictionnaire, ou ?


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut liste, Tuple, dictionnaire, ou ?
    Bonjour,


    J'ai un projet de logiciel. Je commence en programmation avec Python. Mais je n'ai pas assez de recule pour trouver la bonne stratégie de départ, et le bon objet de programmation (liste, tuple, dictionnaire, classe ?).

    Description sommaire de ce projet :

    J'aimerais développer des séquences de nombres à partir d'une liste de nombres.
    Ces séquences ne seront pas forcément linéaires, mais j'aimerais les construire grâce aux index de la liste (ou une autre méthode?).

    L'idée est de construire des séquences et de placer chacune d'elles dans une variable différente. La variable sert ensuite à appeler une séquence construite.

    exemple :

    liste immuable = (nombres de 1 à 300)
    séquence_1 tirée des nombres de la liste = (10, 20, 30..., 100)
    séquence_2 = (3, 30, 300, 2, 20, 200)
    etc ...

    Chaque nombre doit être un objet.

    En appelant une séquence par sa référence (la variable), je dois pouvoir utiliser les nombres de cette séquence. Chaque nombre renvoie ensuite à un objet graphique (exemple, une forme carrée), à un objet sonore (un son), à une couleur en particulier.


    Mon but est de produire des événements visuels (via une interface GUI) répondant aux nombres composant telle ou telle séquence appelée.

    J'espère être assez clair.

    J'ai essayé avec ce code là :

    nombres = [1,2,...,300]
    variable_1 = nombres [0:11]

    mais si je veux les index 0,12,22,33 de ma liste, je ne sais comment faire.


    Par avance merci pour votre aide.

    Pascalist

  2. #2
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 823
    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 : 3 823
    Points : 7 119
    Points
    7 119
    Par défaut
    Tes indexs tu les donnes manuellement ou aléatoirement?

    Chaque nombre doit être un objet.
    Mouiiiiii... ça passe limite avec un dico par exemple
    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)

  3. #3
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    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 690
    Points : 30 984
    Points
    30 984
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Pascalist Voir le message
    Bonjour,


    J'ai un projet de logiciel. Je commence en programmation avec Python. Mais je n'ai pas assez de recule pour trouver la bonne stratégie de départ, et le bon objet de programmation (liste, tuple, dictionnaire, classe ?).

    Description sommaire de ce projet :

    J'aimerais développer des séquences de nombres à partir d'une liste de nombres.
    Ces séquences ne seront pas forcément linéaires, mais j'aimerais les construire grâce aux index de la liste (ou une autre méthode?).

    L'idée est de construire des séquences et de placer chacune d'elles dans une variable différente. La variable sert ensuite à appeler une séquence construite.

    exemple :

    liste immuable = (nombres de 1 à 300)
    séquence_1 tirée des nombres de la liste = (10, 20, 30..., 100)
    séquence_2 = (3, 30, 300, 2, 20, 200)
    etc ...

    Chaque nombre doit être un objet.

    En appelant une séquence par sa référence (la variable), je dois pouvoir utiliser les nombres de cette séquence. Chaque nombre renvoie ensuite à un objet graphique (exemple, une forme carrée), à un objet sonore (un son), à une couleur en particulier.


    Mon but est de produire des événements visuels (via une interface GUI) répondant aux nombres composant telle ou telle séquence appelée.

    J'espère être assez clair.
    Absolument pas.

    On ne sait pas quelles sont les relations entre tes nombres, tes listes, etc. Est-ce que la séquence 2 est reliée à un nombre quelconque de la liste ?

    Bon bref voici quelques exemples possibles
    Exemple 1: chaque nombre est associé une séquence
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    map={}
    for i in range(1, 301): map[i]=range(i)

    Exemple 2: différentes séquences sans aucun lien entre elles mais regroupées dans un objet unique pour pouvoir êtres manipulées facilement
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    map={
        "sequence1": range(100),
        "sequence2": range(200),
        "sequence3": range(300),
    }

    Exemple 3: chaque nombre est associé à plusieurs séquences
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    map={}
    for i in range(1, 301):
        map[i]={}
        for j in range(i):
            map[i][j]=range(i * j)
    # for

    Citation Envoyé par Pascalist Voir le message
    En appelant une séquence par sa référence (la variable), je dois pouvoir utiliser les nombres de cette séquence. Chaque nombre renvoie ensuite à un objet graphique (exemple, une forme carrée), à un objet sonore (un son), à une couleur en particulier.
    Ouais ok. Et la marmotte emballe le chocolat...
    Ce qui se conçoit bien s'énonce clairement (Nicolas Boisleau)
    Quand ce sera clair dans ta tête, reviens nous voir...
    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]

  4. #4
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 823
    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 : 3 823
    Points : 7 119
    Points
    7 119
    Par défaut
    En choisissant un nombre on peut en sortir un objet, cependant ça devient tout de suite complexe pour un débutant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    from Tkinter import *
     
    class Fen(Tk):
    	def __init__(self, master=None):
    		self.master = master
    		Tk.__init__(self)
    		self.ent = Entry(self.master)
    		self.ent.pack()
     
    dico = {1: Fen}
    choix = int(input("Entrer votre choix :"))
    dico[choix]().mainloop()
    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)

  5. #5
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par fred1599 Voir le message
    Tes indexs tu les donnes manuellement ou aléatoirement?

    muellement.

    Mouiiiiii... ça passe limite avec un dico par exemple

  6. #6
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    de façon manuelle, je veux dire.


    Merci.

  7. #7
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Absolument pas.

    On ne sait pas quelles sont les relations entre tes nombres, tes listes, etc. Est-ce que la séquence 2 est reliée à un nombre quelconque de la liste ?


    Les relations sont définies justement par les séquences.


    Ouais ok. Et la marmotte emballe le chocolat...
    Ce qui se conçoit bien s'énonce clairement (Nicolas Boisleau)
    Quand ce sera clair dans ta tête, reviens nous voir...
    Pas faux. Je sais ce que je veux faire, mais le dire techniquement sur le plan programmation, là, je ne sais pas. C'est bien pourquoi, je me suis permis de faire appel à vos lumières pour trouver un départ.

    Merci pour tes exemples. Je vais travailler dessus pour les comprendre.

  8. #8
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Pascalist Voir le message
    Bonjour,


    J'ai un projet de logiciel. Je commence en programmation avec Python. Mais je n'ai pas assez de recule pour trouver la bonne stratégie de départ, et le bon objet de programmation (liste, tuple, dictionnaire, classe ?).

    Description sommaire de ce projet :

    J'aimerais développer des séquences de nombres à partir d'une liste de nombres.
    Ces séquences ne seront pas forcément linéaires, mais j'aimerais les construire grâce aux index de la liste (ou une autre méthode?).

    L'idée est de construire des séquences et de placer chacune d'elles dans une variable différente. La variable sert ensuite à appeler une séquence construite.

    exemple :

    liste immuable = (nombres de 1 à 300)
    séquence_1 tirée des nombres de la liste = (10, 20, 30..., 100)
    séquence_2 = (3, 30, 300, 2, 20, 200)
    etc ...

    Chaque nombre doit être un objet.

    En appelant une séquence par sa référence (la variable), je dois pouvoir utiliser les nombres de cette séquence. Chaque nombre renvoie ensuite à un objet graphique (exemple, une forme carrée), à un objet sonore (un son), à une couleur en particulier.


    Mon but est de produire des événements visuels (via une interface GUI) répondant aux nombres composant telle ou telle séquence appelée.

    J'espère être assez clair.

    J'ai essayé avec ce code là :

    nombres = [1,2,...,300]
    variable_1 = nombres [0:11]

    mais si je veux les index 0,12,22,33 de ma liste, je ne sais comment faire.


    Par avance merci pour votre aide.

    Pascalist
    J'explique autrement mon projet :


    je veux manipuler des objets graphiques (exemple un carré).
    Chaque objet graphique est relié à un nombre indexé dans une grande liste.
    Chaque nombre de cette liste peut se retrouver dans plusieurs séquences.
    Chaque séquence définie un type de relation entre les nombres qui la composent.
    En appelant cette séquence (enregistrée dans un conteneur) on manipule les objets graphiques 2D ou 3D.

    Voilà autrement dit.

    Je pensais utiliser les listes pour structurer les données et les manipuler ensuite par les index.

  9. #9
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 823
    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 : 3 823
    Points : 7 119
    Points
    7 119
    Par défaut
    je veux manipuler des objets graphiques (exemple un carré).
    OK

    Chaque objet graphique est relié à un nombre indexé dans une grande liste.
    Tu maîtrises un peu la POO

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    objets = [CARRE, CERCLE, LOSANGE] # Attention se ne sont pas des chaînes de caractères
    Chaque nombre de cette liste peut se retrouver dans plusieurs séquences
    Nombre ou objet ?

    En appelant cette séquence (enregistrée dans un conteneur) on manipule les objets graphiques 2D ou 3D.
    Waouhhh, ça fait longtemps que tu fais du python? Et puis là j'ai dû mal à imaginer la chose à vrai dire.
    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)

  10. #10
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 462
    Points : 9 249
    Points
    9 249
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Citation Envoyé par Pascalist Voir le message
    je veux manipuler des objets graphiques (exemple un carré).
    Chaque objet graphique est relié à un nombre indexé dans une grande liste.
    Chaque nombre de cette liste peut se retrouver dans plusieurs séquences.
    Chaque séquence définie un type de relation entre les nombres qui la composent.
    En appelant cette séquence (enregistrée dans un conteneur) on manipule les objets graphiques 2D ou 3D.
    Je ne suis pas sûr d'avoir tout compris, mais voilà quelques pistes.

    Comme Python est très "POO", on peut facilement créer des "objets graphiques" sous forme de classes et comportant toutes les méthodes utiles:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    class Cercle(object):
        def __init__(self, x, y, r):
            ...
        def affiche(self):
            ...
        def surface(self):
            ...
     
    class Triangle(object):
        def __init__(self, x1, y1, x2, y2, x3, y3):
            ...
        def affiche(self):
            ...
        def surface(self):
            ...
    Ici, la classe Cercle, par exemple, est un "modèle" qui permet de représenter un cercle particulier par instanciation avec une variable: cercle=Cercle(x,y,r).

    Mais on peut directement utiliser un des membres d'une liste pour ça. Imaginons pouvoir accéder à tous les objets avec une liste L qui contient déjà 3 objets. On peut ajouter un nouvel objet "Cercle" avec:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    L.append(Cercle(x,y,r))
    On retrouvera ainsi directement le cercle qu'on vient de créer en appelant la liste avec son bon index (ici = 3): L[3].surface() calculera la surface du cercle. On peut donc avoir tous les objets créés, pointés par une seule liste.

    Pour une utilisation particulière dans le programme, on peut très bien avoir une liste d'index pour désigner sur la liste précédente les objets à considérer dans l'ordre ou on veut les traiter. Par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    R = [2,1,3]
    for i in xrange(0, len(R)):
        print L[R[i]].surface()
    affichera la surface des objets de L dans l'ordre donné par R (d'abord L[2], puis L[1] et enfin L[3] et sans considérer l'objet L[0]).

    Rien n'empêche de filtrer la liste pour ne retenir, par exemple, que les cercles:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    F = [obj  for obj in L if obj.__class__.__name__=="Cercle"]
    Etc... Les listes chez Python sont très souples!

    Avant de tout construire, il faut probablement créer des classes primitives pour les objets de base (Point, Droite, etc...) et de créer les objets plus complexes par héritage. Ainsi, il serait logique de créer la classe Cercle comme un cas particulier de la classe Ellipse, ce qui permettrait de ne pas réécrire la partie commune.

    Bref, un joli boulot conceptuel à faire...
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

  11. #11
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 823
    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 : 3 823
    Points : 7 119
    Points
    7 119
    Par défaut
    @tyrtamos : Même idée que toi, ce qui m'inquiète c'est ce que le PO a dit

    Je commence en programmation avec Python
    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)

  12. #12
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 462
    Points : 9 249
    Points
    9 249
    Billets dans le blog
    6
    Par défaut
    Bonjour fred1599,

    Oui, mais on peut débuter en Python sans débuter en programmation. Et si c'est le cas, il faut montrer les possibilités de Python, et non les bases de l'informatique.

    Comme on ne sait pas: au posteur de savoir si ça lui convient .
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

  13. #13
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Merci Tyrtamos et fred1599.

    Votre aide est un bon point de départ pour moi. je vais potasser vos exemples avec l'appui de quelques tuto sur Python pour bien me représenter les choses.


    Je sais qu'il n'ai pas toujours facile d'expliquer les choses en quelques lignes.

    Je découvre Python et s'est très sympa.

  14. #14
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Pascalist Voir le message
    Merci Tyrtamos et fred1599.

    Votre aide est un bon point de départ pour moi. je vais potasser vos exemples avec l'appui de quelques tuto sur Python pour bien me représenter les choses.


    Je sais qu'il n'ai pas toujours facile d'expliquer les choses en quelques lignes.

    Je découvre Python et s'est très sympa.
    J'oubliai Sve@r.

  15. #15
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    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 690
    Points : 30 984
    Points
    30 984
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Pascalist Voir le message
    J'oubliai Sve@r.
    Pas de souci, j'ai l'habitude d'être oublié

    Citation Envoyé par Pascalist Voir le message
    J'explique autrement mon projet :


    je veux manipuler des objets graphiques (exemple un carré).
    Chaque objet graphique est relié à un nombre indexé dans une grande liste.
    Chaque nombre de cette liste peut se retrouver dans plusieurs séquences.
    Chaque séquence définie un type de relation entre les nombres qui la composent.
    En appelant cette séquence (enregistrée dans un conteneur) on manipule les objets graphiques 2D ou 3D.
    Bon c'est déjà un peu plus clair.

    Citation Envoyé par Pascalist Voir le message
    je veux manipuler des objets graphiques (exemple un carré).
    Chaque objet graphique est relié à un nombre indexé dans une grande liste.
    Ok. On peut imaginer un truc de ce genre
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    class carre: object
        ... toute la classe
    # class carre
     
    class cube: object
        ... toute la classe
    # class cube
     
    liste={
        1: carre(),
        2: cube(),
       ... etc ...
    }

    Citation Envoyé par Pascalist Voir le message
    Chaque nombre de cette liste peut se retrouver dans plusieurs séquences.
    Ok, donc un truc de ce genre
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    seq1=[1, 3, 5]
    seq2=[2, 4, 6]

    Citation Envoyé par Pascalist Voir le message
    Je pensais utiliser les listes pour structurer les données et les manipuler ensuite par les index.
    Tout est possible en Python
    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]

  16. #16
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Merci Sve@r.

    Autre question : Python prévoit la manipulation des éléments à l'intérieur d'une liste.

    peut-on appeler un élément de plusieurs listes différentes et les intégrer dans une nouvelle liste.

    A partir de cet exemple ? :

    nombres = [1,2,3,4,5,6,...,x]
    var_1 = nombres [0:10]
    var_2 = nombres [11:21]
    var_3 = nombres [22:33]

    var_4 = [var_1[0:1]] # Comment sélectionner les premiers éléments de chaque liste et les placer dans var_4 ?


    Merci bien.

  17. #17
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut
    Citation Envoyé par Pascalist Voir le message
    var_4 = [var_1[0:1]] # Comment sélectionner les premiers éléments de chaque liste et les placer dans var_4 ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    myLists = (var_1, var_2, var_3)
    var_4 = []
    for l in myLists:
         var_4.append(l[0])
    # ou par comprehension
    var_4 = [ l[0] for l in myLists ]
    mais les possibilités de s'exprimer en Python n'ont que peu de rapport avec l'algorithme que vous voulez écrire.
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  18. #18
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    merci wiztricks

  19. #19
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    myLists = (var_1, var_2, var_3)
    var_4 = []
    for l in myLists:
         var_4.append(l[0])
    # ou par comprehension
    var_4 = [ l[0] for l in myLists ]
    - W
    Cette boucle me permet en effet de créer une nouvelle liste à partir de plusieurs listes. Je te remercie.

    J'aimerais maintenant pouvoir fondre 2 listes comme une seule.

    List_1 = [1,2,3,4,5,6,7,8,9,10]
    List_2 = [10,20,30]

    List_3 = list_1.extend(List_2)
    print (List_3) # retourne "none" et non ma nouvelle liste.

    Une idée ?

  20. #20
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    243
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 243
    Points : 328
    Points
    328
    Par défaut
    Parceque <maListe>.Extend modifie <maListe>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    >>> List_1 = [1,2,3,4,5,6,7,8,9,10]
    >>> List_2 = [10,20,30]
    >>> List_1.extend(List_2)
    >>> List_1
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 20, 30]
    cf la doc. paragraphe sur les Mutable Sequence Types

    edit : lien sur la doc.

Discussions similaires

  1. [C#] Requete Linq sur List<Tuple<String,Guid>>
    Par jubourbon dans le forum Linq
    Réponses: 3
    Dernier message: 29/03/2011, 10h00
  2. opérations sur listes et dictionnaires
    Par rom44 dans le forum Général Python
    Réponses: 20
    Dernier message: 14/10/2010, 00h49
  3. Mise a jour liste de dictionnaire
    Par Invité(e) dans le forum Général Python
    Réponses: 6
    Dernier message: 19/10/2009, 16h07
  4. Dictionnaire de liste -> liste de dictionnaire
    Par ju_bicycle dans le forum Général Python
    Réponses: 8
    Dernier message: 01/07/2009, 12h43
  5. Listes et dictionnaire
    Par Victoria007 dans le forum Général Python
    Réponses: 3
    Dernier message: 19/05/2008, 22h38

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