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 :

Besoin avis communauté


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Débutant Programmation
    Inscrit en
    Juillet 2018
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Débutant Programmation

    Informations forums :
    Inscription : Juillet 2018
    Messages : 16
    Par défaut Besoin avis communauté
    Bonjour à tous,

    Je débute en programmation. Je suis en train d'apprendre Python

    J'ai pris un livre écrit par Gérard Swinnen "Apprendre à programmer en python 3"

    Je suis sur un exercice qui demande de créer une liste à partir de deux listes de manière à rassembler tous les éléments des deux listes en alternant lesdits éléments.
    (ex 5.11 p 45 du livre)

    Mon programme est différent de celui de la correction du livre.

    Je souhaiterai savoir si mon script est valabe malgré tout ou s'il n'est pas bien écrit et s'avère bordélique à lire.


    Je vous joins le script:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    t1=[31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
    t2=['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'juin','juillet', 'Août', \
        'septembre', 'Octobre', 'Novembre', 'Décembre']
    a,b,=-1,0
     
    while a<11:
        a=a+1
        b=a%12
        t3=t1[b],t2[b]
        print(t3)
    Merci d'avance...

    sloder

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    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 762
    Par défaut
    Salut,

    Citation Envoyé par sloder Voir le message
    Je souhaiterai savoir si mon script est valabe malgré tout ou s'il n'est pas bien écrit et s'avère bordélique à lire.
    Le plus important est dans le temps que vous avez passé à l'écrire et à le mettre au point avec, au bout, la satisfaction de le voir fonctionner.
    Après le plus difficile est de prendre le temps de vous relire en critiquant vous même ce que vous avez fait. Vous voyez bien que pour fabriquer t3, vous n'utilisez qu'un indice (b). Donc la question serait à quoi peut donc servir "a"? ou plutôt pourquoi ne pas l'avoir utilisé directement (sans passer par "b").

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 358
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 358
    Par défaut
    Bonjour et bienvenue,

    En fait, ta réponse ne répond pas à l'exercice: à la fin t3 doit être une liste qui contient tous les éléments des 2 listes et ceci de manière alternée.

    Pour t'en rendre compte, tu n'as qu'à sortir de la boucle le print(t3).

  4. #4
    Membre averti
    Homme Profil pro
    Débutant Programmation
    Inscrit en
    Juillet 2018
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Débutant Programmation

    Informations forums :
    Inscription : Juillet 2018
    Messages : 16
    Par défaut
    J'ai essayé de me servir uniquement de a mais je ne suis pas encore arrivé à trouver la solution. Il faut que je continue de chercher. Je pensais qu'il fallait utiliser a comme compteur et b comme indice. Je n'ai pas dû bien comprendre le principe...


    J'ai essayé aussi de créer un troisième liste t3 comme mentionné dans la deuxième réponse mais je n'ai pas encore trouvé non plus la solution.
    J'arrive à l'afficher proprement comme demandé dans l'exercice 5.12 p 45 mais je ne vois pas comment faire pour mettre le tout dans une liste au même titre que le t1 ou t2. Je pensais d'ailleurs que ma liste était créée avec ce script.

  5. #5
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 358
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 358
    Par défaut
    Un petit indice: par rapport au livre que tu utilises, un peu avant l'exercice, il explique comment ajouter des éléments dans une liste.
    Et ne pas oublier de déclarer t3 comme étant une liste vide ( t3=[] ) avant de l'utiliser.

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 840
    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 840
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par sloder Voir le message
    Je pensais qu'il fallait utiliser a comme compteur et b comme indice. Je n'ai pas dû bien comprendre le principe...
    Bonjour
    compteur et indice c'est souvent un petit peu la même chose non ? Je veux dire c'est que si t'avais un tableau de (par exemple) 100 éléments, tu aurais alors un compteur allant soit de 0 à 99, soit de 1 à 100. Parce que j'ai beau chercher, je ne vois pas pourquoi il irait plus loin.
    Et comme les indices du tableau, eux, vont de 0 à 99; ben l'un dans l'autre...

    Citation Envoyé par sloder Voir le message
    J'ai essayé de me servir uniquement de a mais je ne suis pas encore arrivé à trouver la solution.
    Puisque b égale (équivaut) à a%12, t'as alors le droit d'écrire "a%12" partout où tu as "b". Ca c'est juste une application bateau de l'égalité mathématique que tu emploies sans trop réfléchir à sa signification profonde.
    De plus, puisque ta liste n'a que 12 éléments, alors le modulo ne sera jamais utilisé. Autrement dit, dans toute la boucle où a est toujours inférieur à 11, alors a % 12 vaut a. Ca c'est de la logique un peu plus poussée mais à peine (juste un niveau d'abstraction).
    Donc puisque b = a%12 et que a%12 = a, alors (transitivité)...

    Citation Envoyé par sloder Voir le message
    J'ai essayé aussi de créer un troisième liste t3 comme mentionné dans la deuxième réponse mais je n'ai pas encore trouvé non plus la solution.
    Ca présuppose que tu saches comment ajouter des éléments dans une liste. Soit tu as atteint cette partie et tu le sais, soit tu ne l'as pas encore atteinte et tu ne pourras jamais trouver.

    Citation Envoyé par sloder Voir le message
    Je pensais d'ailleurs que ma liste était créée avec ce script.
    Ben non. Ton script ne fait qu'afficher t1 et t2 mais ne crée rien. Enfin si, il crée un tuple "t3" qui contient chaque couple (t1[x], t2[x]) mais chaque tour de boucle le réécrase.

    Accessoirement c'est source de confusion de modifier une variable de boucle après l'avoir vérifiée mais avant de l'utiliser (tu vérifies que a < 11 puis tu l'incrémentes puis tu regardes t1[a]). Là moi je me dis "pourquoi il s'arrête avant 11 (donc à 10) alors que son tableau a 12 éléments (donc des indices qui vont de 0 inclus jusqu'à 11 inclus)". De même ton départ à -1 surprend un peu.

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    a=0
    while a<12:
        b=a%12
        t3=t1[b],t2[b]
        print(t3)
        a+=1
    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]

  7. #7
    Membre averti
    Homme Profil pro
    Débutant Programmation
    Inscrit en
    Juillet 2018
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Débutant Programmation

    Informations forums :
    Inscription : Juillet 2018
    Messages : 16
    Par défaut
    Bonsoir,

    J'ai lu la partie qui explique comment ajouter un élément mais je ne fais pas encore le lien entre l'exercice et cette partie de la solution.

    J'ai pris a=-1 pour faire en sorte que le mois de janvier apparaisse en début de résultat. Si je mets a=0 dans mon script, il manque janvier et si je mets dans la boucle a<12 et non 11, janvier apparaît à la fin et non au début.


    Mais je commence à me dire que je n'ai pas bien compris les indices voir l'instruction while…

    Il faut que je relise le tout voir m'aider en faisant des recherches sur un deuxième cours...

Discussions similaires

  1. besoin avis projet de server auto hebergement et media center
    Par cabbes dans le forum Virtualisation
    Réponses: 0
    Dernier message: 22/11/2012, 10h08
  2. Besoin avis pour dev avec TServerSocket (avec ou sans thread)
    Par Invité dans le forum Web & réseau
    Réponses: 15
    Dernier message: 04/07/2011, 10h45
  3. Besoin Avis d'Expert Oracle-Objet (SQL3)
    Par cybernoid dans le forum SQL
    Réponses: 3
    Dernier message: 12/10/2007, 21h25
  4. [cv] Besoin avis/conseil
    Par SoBaKa dans le forum CV
    Réponses: 14
    Dernier message: 14/06/2007, 09h34

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