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 :

Calcul de distance


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 107
    Par défaut Calcul de distance
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     liste_1 = [1,3, 5, 7]
    liste_2 = [2, 4, 6, 8]
    liste_3 = [9, 11, 12]
    liste_4 = [1, 2]
    j'aimerai créer une fonction qui multiplie les nombres deux à deux uniquement quand la liste et de même longueur et me renvoie false quand les listes ont une taille différente.
    Pour la liste_2 et la liste_1 (multiplication) 2*1, 4*3, 6*5, 8*7. Cela me donnerai une nouvelle liste :calcul = [2, 12, 30, 56]


    Est ce que quelqu'un aurait une idée

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par défaut
    Salut,

    Voici un exemple :
    Code python : 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
     
    def mul(lst1, lst2):
     
        if len(lst1) != len(lst2):
            return False
        res = []
        for i, elem in enumerate(lst1):
            res.append(elem*lst2[i])
     
        return res
     
     
    liste_1 = [1, 3, 5, 7]
    liste_2 = [2, 4, 6, 8]
    liste_3 = [9, 11, 12]
    liste_4 = [1, 2]
     
    print(mul(liste_1, liste_2))   # [2, 12, 30, 56]
    print(mul(liste_1, liste_4))   # False

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 740
    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 740
    Par défaut
    ou plus concis:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    def mul(a, b):
          if len(a) == len(b):
             return [ i*j for i, j in zip(a, b) ]
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 107
    Par défaut
    La fonction zip prend une liste si j'ai bien compris

  5. #5
    Membre Expert

    Homme Profil pro
    Ingénieur calcul scientifique
    Inscrit en
    Mars 2013
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur calcul scientifique

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 229
    Par défaut
    Non la fonction zip prend 2 itérables (a et b), et les listes font parti des itérables

  6. #6
    Membre actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 107
    Par défaut
    J'ai un peut tenter de modifier la fonction mais pour appliquer une racine carré

    import math

  7. #7
    Membre actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 107
    Par défaut
    J'ai un peu tenter de modifier la fonction mais pour appliquer une racine carré

    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
    import math
     
    def mul(lst1, lst2):
        if len(lst1) != len(lst2):
            return False
        for i, elem in enumerate(lst1):
            res = math.sqrt((elem-lst2[i])**2)
        return res
     
    # opération : sqrt( (15-2)**2 + (8-4)**2 + (8-6)**2 + (9-8)**2 )
     
    liste_1 = [15, 8, 8, 9]
    liste_2 = [2, 4, 6, 8]
    liste_3 = [9, 11, 12]
    liste_4 = [1, 2]
     
    print(mul(liste_1, liste_2))
    print(mul(liste_1, liste_4))
    retour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    1.0 # ce qui devrait être 15,90
    False # ce qui est okk
    Merci beaucoup si tu as une idée !

Discussions similaires

  1. calculer la distance qu'il y a entre une div et le bas de page
    Par Henry9 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/09/2007, 00h33
  2. Problème et questions sur un calcul de distance
    Par ale2000 dans le forum Traitement d'images
    Réponses: 7
    Dernier message: 11/09/2007, 20h33
  3. Calculer des distances géodésiques
    Par ToTo13 dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 30/11/2006, 08h59
  4. Calcul de distance entre deux points en WGS84
    Par marieR dans le forum Langage
    Réponses: 5
    Dernier message: 03/08/2006, 17h07
  5. [GEOMETRIE] calcul de distance dans un triangle
    Par gronaze dans le forum Mathématiques
    Réponses: 10
    Dernier message: 29/06/2006, 10h04

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