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 :

faire une somme direct d'une sous liste à l’intérieur d'une lise


Sujet :

Python

  1. #1
    Membre très actif
    Femme Profil pro
    étudiante chercheuse
    Inscrit en
    Septembre 2013
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante chercheuse
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 274
    Par défaut faire une somme direct d'une sous liste à l’intérieur d'une lise
    ayant une structure:
    sous_chaine :[(8, 11), (8, 3), (11, 3), (8, 11, 3)]
    j'ai une fonction qui extrait directement : density(elt)
    je veux faire une autre liste
    density_sous_chaine : avaec la meme strcture
    density_sous_chaine ::[((density(8), density(11)), .....]
    puis une autre structure : density_sous_chaine
    density_sous_chaine :[(sum((density(8), density(11))), .....]

    j'ai essayer ça
    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
    sous_chaine=[]
                                    density_sous_chaine=[]
                                    sum_density_sous_chaine=[]
                                    x=len(chaine_precedence)
                                    for j in range (2,x+1):
                                        for i in combinations(chaine_precedence,j):
                                            sous_chaine.append(i)
                                    print("sous_chaine",sous_chaine)
                                    for m in sous_chaine:
                                        print ('m',m) ;
                                        sum_density_sous_chaine.append(sum(m))
                                        #for k in starmap(add, m))
                                        #for h in islice(sous_chaine, len(sous_chaine),len(m)):
                                        for n in m:
                                            print(n)
                                            density_sous_chaine.append(get_task_density(n))
    mais j'ai pas pu avoir la structure final que je souhaite faire

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    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 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Pour autant que j'ai compris la question, voilà ce que je ferais:

    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
    17
    18
    19
    20
    def density(x):
        return x
     
    sous_chaine = [(8, 11), (8, 3), (11, 3), (8, 11, 3)]
     
    # 1ère structure:
    density_sous_chaine = []
    for elem in sous_chaine:
        for n in elem:
            density_sous_chaine.append(density(n))
    print(density_sous_chaine)   
     
    # 2ème structure:
    density_sous_chaine = []
    for elem in sous_chaine:
        elem2 = []
        for n in elem:
            elem2.append(density(n))
        density_sous_chaine.append(sum(elem2))
    print(density_sous_chaine)
    Ce qui affiche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [8, 11, 8, 3, 11, 3, 8, 11, 3]
    [19, 11, 14, 22]

  3. #3
    Membre très actif
    Femme Profil pro
    étudiante chercheuse
    Inscrit en
    Septembre 2013
    Messages
    274
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante chercheuse
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2013
    Messages : 274
    Par défaut
    en fait c'est exactement ce que mon code donne déjà voir mon code garde la première structure voulu
    pour moi le demander est :
    pour par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sous_chaine = [(8, 11), (8, 3), (11, 3), (8, 11, 3)]
    density_sous_chaine=[(0,8, 0,1), (0,8, 0,3), (02, 0,3), (0.8, 0.2, 0.3)] # --> sachant que les valeur extraite par la fonction density(8) ,density(11),density(3),...
    sum_density_sous_chaine=[(0.9),(1.1),(0.5),(1.3)] # --> sachant que la valeur extraite est faite par la fonction sum(0,8, 0,1) par exemple

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 15
    Dernier message: 21/05/2010, 00h36
  2. [XL-2003] Faire une somme avec la fonction sous total
    Par Gwladys dans le forum Excel
    Réponses: 2
    Dernier message: 09/04/2009, 17h26
  3. Faire une somme sous condition
    Par maystreet dans le forum Deski
    Réponses: 1
    Dernier message: 16/03/2009, 16h43
  4. Faire une liste sous visual C++
    Par toutounesan dans le forum C++
    Réponses: 1
    Dernier message: 24/08/2007, 17h34
  5. Probleme pour faire une somme sous Excel
    Par Nicolas92 dans le forum Excel
    Réponses: 5
    Dernier message: 02/12/2005, 11h38

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