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 :

Quelle est cette syntaxe ? [Python 3.X]


Sujet :

Python

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 120
    Points : 72
    Points
    72
    Par défaut Quelle est cette syntaxe ?
    Bonjour,

    Je suis débutant en Python et j'étudie donc des morceaux de codes pour progresser, je suis tombé sur celui-ci, et je ne comprends pas
    comment l'utilisation des instructions for et if est possible de cette manière, à savoir dans une parenthèse, sans indentation et sur une seule ligne.
    J'ai effectué pas mal de recherche, je ne trouve pas, pouvez-vous m'en dire plus sur cette façon de programmer ? Est-ce uniquement utilisable
    avec des dictionnaires, des listes ?

    Ce code est tiré de projet:

    https://github.com/RobotTraders/Pyth...hapter_3.ipynb


    Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    # 4. Add to the dictionary the average purchase price for each of the cryptos
    for symbol in portfolio:
        total_quantity_bought = sum([t["quantity"] for t in transactions if t["symbol"] == symbol and t["type"] == "buy"])
        total_spent = sum([t["price"] * t["quantity"] for t in transactions if t["symbol"] == symbol and t["type"] == "buy"])
        avg_price = total_spent / total_quantity_bought
        portfolio[symbol]["avg_price"] = avg_price
     
    print(portfolio)

  2. #2
    Membre expérimenté
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    906
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 906
    Points : 1 596
    Points
    1 596
    Billets dans le blog
    6
    Par défaut
    Bonjour.
    Citation Envoyé par nono63 Voir le message
    pouvez-vous m'en dire plus sur cette façon de programmer ?
    Cela s'appelle une compréhension de liste, regarde par exemple: https://python.doctor/page-comprehen...ours-debutants.
    #Rien de nouveau sous le soleil, tout est vanité comme courir après le vent!
    Envie de développer pour Android avec Python? Pensez à Kivy
    Kivy c'est aussi ça: https://www.youtube.com/@MPython_Alaplancha

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 120
    Points : 72
    Points
    72
    Par défaut
    Citation Envoyé par MPython Alaplancha Voir le message
    Bonjour.


    Cela s'appelle une compréhension de liste, regarde par exemple: https://python.doctor/page-comprehen...ours-debutants.
    Super, merci !

  4. #4
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 966
    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 966
    Points : 7 389
    Points
    7 389
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    total_quantity_bought = sum([t["quantity"] for t in transactions if t["symbol"] == symbol and t["type"] == "buy"])
    total_spent = sum([t["price"] * t["quantity"] for t in transactions if t["symbol"] == symbol and t["type"] == "buy"])
    Pas sûr que se soit très efficace... Les calculs pourraient être combinés pour réduire le nombre d'opérations.
    Je pense qu'on peut regrouper les données dans une seule passe avec un dictionnaire.
    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)

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

Discussions similaires

  1. Quelle est cette syntaxe de classe?
    Par flyeric dans le forum Langage
    Réponses: 2
    Dernier message: 11/04/2018, 10h04
  2. quelle est cette syntaxe
    Par mapmip dans le forum Langage
    Réponses: 4
    Dernier message: 11/06/2013, 15h45
  3. Quelle est cette syntaxe ?
    Par Sylva1n dans le forum Débuter
    Réponses: 3
    Dernier message: 13/12/2012, 20h57
  4. quelle est cette valeur
    Par b4mail dans le forum C
    Réponses: 13
    Dernier message: 15/05/2006, 00h39
  5. Quelle est cette commande qui plante linux?
    Par 123quatre dans le forum Shell et commandes GNU
    Réponses: 11
    Dernier message: 18/02/2006, 14h48

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