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 :

Exercice sur le codage couleur des résistances et condensateur


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2021
    Messages : 4
    Par défaut Exercice sur le codage couleur des résistances et condensateur
    Code de de couleur des résistances et condensateurs
    L’utilisateur saisit une chaîne de caractères (par exemple 4,7kOhm, 100Ohm ou 18nF), et le programme restitue le code couleur correspondant. Inversement, si l’utilisateur saisit une suite de 3 ou 4 couleurs, le programme donne les valeurs de la résistance et de la capacité correspondante, avec éventuellement la précision si la 4e couleur est donnée.

  2. #2
    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
    OK, et quelle est votre proposition pour tenter de résoudre ca ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2021
    Messages : 4
    Par défaut
    J’ai fait des dictionnaires couleurs et multiplicateurs mais je bloque sur le corps du code sur une boucle for , je suis un peu novice en python

  4. #4
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 334
    Par défaut
    bonjour
    Citation Envoyé par Meton2 Voir le message
    mais je bloque sur le corps du code sur une boucle for
    Comment est-il possible de t'aider avec ton for si nous n'avons pas tes "dictionnaires" ? Il nous faut tout ton code et des explications sur ton code (même surtout si il ne fonctionne pas) et ou se situe exactement ton problème. Sinon au mieux, nous pouvons te faire un lien vers un tuto sur "for"

    utilisateur saisit une chaîne de caractères (par exemple 4,7kOhm, 100Ohm ou 18nF), et le programme restitue le code couleur correspondant.
    Suis pas trop futé, je n'arrive même pas à voir une bouche for dans cette demande

    la seule chose que je peux deviner ... puisque tu as des kOhm, Ohm ou nF, c'est que en tout premier lieu, tu convertis l'entrée dans un format unique pour pouvoir la traiter ensuite. peut-être la partie la plus difficile pour un débutant ?

  5. #5
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 364
    Par défaut
    hello,
    Citation Envoyé par Meton2 Voir le message
    Code de de couleur des résistances et condensateurs
    L’utilisateur saisit une chaîne de caractères (par exemple 4,7kOhm, 100Ohm ou 18nF), et le programme restitue le code couleur correspondant. Inversement, si l’utilisateur saisit une suite de 3 ou 4 couleurs, le programme donne les valeurs de la résistance et de la capacité correspondante, avec éventuellement la précision si la 4e couleur est donnée.
    la première chose à faire c'est de vérifier que la saisie est compréhensible par le programme et de redemander une saisie si cela est incorrect.
    Ami calmant, J.P

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 790
    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 790
    Par défaut
    Citation Envoyé par jurassic pork Voir le message
    la première chose à faire c'est de vérifier que la saisie est compréhensible par le programme et de redemander une saisie si cela est incorrect.
    Il faut bien commencer par quelque chose!
    Personnellement, je commencerais plutôt par définir 2 fonctions: colors_to_value et value_to_colors qui prendront des arguments bien définis et vérifiables avec un jeu de tests.
    Çà va donner une cible pour savoir comment traduire 4,7kOhm en (chiffres significatifs, multiplicateur, tolérance).
    Et peut être simplifier la saisie car si on peut écrire kOhm, MOhm quand ce sera 10**2 ou 10**7 (autre chose que des multiples de 1000), il sera difficile de l'exprimer autrement que par une puissance de 10.

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

  7. #7
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 875
    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 875
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Meton2 Voir le message
    je suis un peu novice en python
    Et aussi un peu novice en politesse. Bonjour, s'il vous plaît, merci etc ça semble des notions un peu floues pour toi. Tu nous poses ton énoncé comme une bouse et démerdez-vous. Ben démerde-toi toi !!!
    Pas d'introduction, ni de détails sur l'aide attendue. Tu n'as même pas donné la notion qui établit le lien entre "4,7kOhm" et une quelconque couleur...
    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]

  8. #8
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 364
    Par défaut
    hello,
    Citation Envoyé par Sve@r Voir le message
    Tu n'as même pas donné la notion qui établit le lien entre "4,7kOhm" et une quelconque couleur...
    moi qui suis ancien électronicien je connais bien cela. Certains composants électroniques comme les résistances par exemple ont leur valeur inscrite non pas sous forme numérique mais sous forme de couleurs dont voici la signification :

    Nom : code_couleur_résistance_électrique.png
Affichages : 1905
Taille : 23,5 Ko

    Par exemple une résistance de 4,7 Kohms de tolérance 5% aura comme code de couleur jaune violet rouge or.

    Ami calmant, J.P

  9. #9
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2021
    Messages : 4
    Par défaut Voici mon code j’ai pu afficher la résistance avec les couleurs maintenant je voudrais faire le contraire mais
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    # calcul resistances
    cent,dix,unit,multipl,tolere=0,0,0,1,0
    multiplicateur={"gold": 0.1,"black":1,"brown":10,"red":10**2,"orange":10**3,"yellow":10**4,"green":10**5,"blue":10**6,"purple":10**7,"grey":10**8,"white":10**9}
     
    chiffres= {"black":0,"brown":1,"red":2,"orange":3,"yellow":4,"green":5,"blue":6,"purple":7,"grey":8,"white":9}
    tolerance= {"black":0.05,"brown":0.01,"red":0.02,"green":0.005,"blue":0.0025,"purple":0.001}
     
     
    multiplicateur2 ={0.1: "gold",1:"black",10:"brown",10**2:"red",10**3:"orange",10**4:"yellow",10**5:"green",10**6:"blue",10**7:"purple",10**8:"grey",10**9:"white"}
     
    chiffres2= {0:"black",1:"brown",2:"red",3:"orange",4:"yellow",5:"green",6:"blue",7:"purple",8:"grey",9:"white"}
     
    # liste des couleurs qu'on doit utilsier 
     
    coul=["or","noir","marron","rouge","orange","vert","bleu","gris","blanc"]
    mult= ["argent","or","noir","marron","rouge","orange","vert","bleu","violet"]
    tol= ["argent","or","noir","marron","rouge","vert","bleu","violet"]
     
    # Correspondances entre le texte affiché dans les Listbox et les couleurs affichées.
    #traduction={"argent":"aucun","or":"gold","noir":"black","marron":"brown","rouge":"red","orange":"orange","jaune":"yellow","vert":"green","bleu":"blue","violet":"purple","gris":"grey","blanc":"white"}
     
    def CouleurMult(val):
      for key, value in multiplicateur.items():
        if value==val:
          return key
     
    def CouleurChiffre(val):
      for key, value in chiffres.items():
        if value==val:
          return key
     
     
    def CouleurTol(val):
      for key, value in tolerance.items():
        if value==val:
          return key
     
     
    def ChiffreCoul(val):
      for key, value in chiffres2.items():
        if value==val:
          return key
     
    def MultCoul(val):
      for key, value in multiplicateur2.items():
        if value==val:
          return key
     
    '''def convpuissance():
      l[l.index("k")] = 10**3
     
    #int(str(x)+str(y))'''
     
    '''cpt = 0
    Res = []
    M = input("Choisissez la valeur de la rez : ")
    for i in M:
      Res.append(i)
     
    print(M)
     
    while(M%10==0):
      cpt+=1
      M = M/10
    D = M//10
    U = M%10
    print(CouleurG(D),CouleurG(U),CouleurG(cpt))
    print(D, U, cpt)
     
     
     
     
    l = []
    s = input("blablabla: ")
    for i in s:
      l.append(i)
     
    print(l)
    if "k" in l :
      convpuissance()
     
    print(l.index("k"))
    '''
    '''liste = ["4",",","7","k","O","h","m"]
    s = ""
    for i in liste :
      s +=i
    print(s)'''
     
     
     
     
    res = []
    resbis = ""
    M = input("Choisissez la valeur de la rez : ")
    temp3 = 0
     
     
     
    def caca1 ():
      temp = 1
      caca = 0
      temp2 = 0
      prout=1
      for i in M:
        res.append(i)
      for e in range (len(res)-3):
        if (len(res)-3) < 3 :
          if (len(res)-3) == 1 :
            print(CouleurChiffre(int(res[e])))
            print(CouleurChiffre(0))
            print(CouleurMult(0.1))
          if (len(res)-3) == 2 :
            if e==1 and res[e]!='k' and res[e]!='M' :
              print(CouleurChiffre(int(res[e])))
              print(CouleurMult(1))
            elif res[e] == 'k':
              print(CouleurChiffre(0))
              print(CouleurMult(10**2))
            elif res[e] == 'M':
              print(CouleurChiffre(0))
              print(CouleurMult(10**5))
            else :
              print(CouleurChiffre(int(res[e])))
        if (len(res)-3) > 2 :
          if res[e] in ['1','2','3','4','5','6','7','8','9','0'] and (e != 2):
            print(CouleurChiffre(int(res[e])))
          elif res[e] == '.' :
            if res[e+2] != 'k' and res[e+2] != 'M':
              print(CouleurChiffre(int(res[e+1])))
              print(CouleurMult(0.1))
            else :
              print(CouleurChiffre(int(res[e+1])))
              temp = 0.1
          elif (e == 2) and ( res[e] != 'k') and (res[e] != 'M') and res[e-1] != '.':
            if res[e] == '0' :
              caca = 10
            if res[e+1] != 'k' and res[e+1] != 'M':
              print(CouleurMult(caca))
          elif res[e] == 'k' :
            if caca == 10:
              temp2 = int(caca) * 10**3
            else :
              temp2 = temp * 10**3
            print(CouleurMult(temp2))
          elif res[e] == 'M' :
            if caca == 10:
              temp3 = int(caca) * 10**6
            else :
              temp3 = temp * 10**6
            print(CouleurMult(temp3))
        #elif res[e] != '.' and res[e-1] != '.':
          #print(Couleur(temp2))
     
    #def caca2 ():
      #resbis=""
      #for i in M:
        #res.append(i)
      #for e in range(len(res)):
        #if res[e] == ' ':
          #print(ChiffreCoul(resbis))
          #resbis = ""
        #else :
          #resbis += res[e]
        #if e == (len(res)-1) :
          #resbis += res[e]
          #print(MultCoul(res[e]))
     
     
     
    caca1()

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

    Vous devriez sentir que la mise en forme de vos données n'aide pas puisque vous écrivez:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    def CouleurChiffre(val):
      for key, value in chiffres.items():
        if value==val:
          return key
    L'intérêt d'un dictionnaire est de récupérer la valeur associée à une clef donnée pas le contraire.

    Par ailleurs, vous voyez (ou pas) que vous avez besoin de récupérer le chiffe associé à une couleur et de récupérer la couleur associée à un chiffre. Avec une liste on a les 2 en un:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> chiffres = [ "black","brown","red","orange","yellow","green","blue","purple","grey","white" ]
    >>> chiffres[3]
    'orange'
    >>> chiffres.index('orange')
    3
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  11. #11
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 364
    Par défaut
    hello,
    Citation Envoyé par Meton2 Voir le message
    def caca1 ():
    temp = 1
    caca = 0
    temp2 = 0
    prout=1
    Tu devrais sentir aussi que l'utilisation de noms de variables et de procédures pas très explicites ne facilite pas la lecture d'un programme. Je ne sais pas si c'est cette phrase de Sve@r qui t'a inspiré les noms des variables et procédures :
    Tu nous poses ton énoncé comme une bouse et démerdez-vous. Ben démerde-toi toi !!!


    Ami calmant, J.P

  12. #12
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 875
    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 875
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Meton2 Voir le message
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if caca == 10:
    	temp2 = int(caca) * 10**3
    else :
    	temp2 = temp * 10**3
    Mouais... déjà je vois pas l'utilité de int(caca) quand "caca" vaut 10 (int(10) ça fait toujours 10 et int(10) * 10**3 ça ne fait jamais plus que 10**4 !!!)
    temp2=temp * 10**3 if caca != 10 else 10**4.

    Citation Envoyé par Meton2 Voir le message
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    def CouleurMult(val):
    	for key, value in multiplicateur.items():
    		if value==val: return key
     
    def CouleurChiffre(val):
    	for key, value in chiffres.items():
    		if value==val: return key
     
    def CouleurTol(val):
    	for key, value in tolerance.items():
    		if value==val: return key
    Tu ne sens pas intuitivement que c'est un peu la même chose ces 3 fonctions? Exemple: si tu devais écrire une fonction pour calculer le carré de 5, le carré de 17 et le carré de 72, est-ce que tu
    • écrirais bêtement 3 fonctions def carre_5(): return 25, def carre_17(): return 289 et def carre_72(): return 5184
    • écrirais une fonction un peu plus intelligente style def carre(x): return x**2


    Ben là c'est pareil.

    Citation Envoyé par jurassic pork Voir le message
    Je ne sais pas si c'est cette phrase de Sve@r qui t'a inspiré les noms des variables et procédures
    A mon avis c'est surtout qu'il n'en a rien à carrer de réfléchir à son code, à ses noms de variables (généralement le nom d'une variable représente son utilité dans l'algorithme), à nous le mettre ici lisiblement (entre balises quote) et certainement de Python en général. Alors je ne vois pas l'utilité de perdre du temps à lui fournir une aide dont visiblement il n'en a que faire...
    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]

  13. #13
    Membre Expert
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    927
    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 : 927
    Billets dans le blog
    8
    Par défaut
    Bonjour,
    Pour info, cet exercice est développé dans le livre de Gérard Swennen (version numérique gratuite) chapitre 6...

  14. #14
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2021
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2021
    Messages : 4
    Par défaut
    Je peux avoir le lien du livre car il en a plusieurs

  15. #15
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 334
    Par défaut
    Quel est le but de ton exercice ?
    Ici, tu as tout à fait bien ta fonction caca() si ton but est juste d'arriver à peu près a un résultat et tout faire pour masquer ton code d'un éventuel correcteur

    Il t'a déjà été noté pas mal de points. Si tu ne les corrige pas en premier lieu, on ne risque pas de t'aider pour faire la seconde partie

    Je ne parle pas de tes dictionnaire (déjà fait), il faut avoir un code clair ! une structure possible de ta fonction pourait-être

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    import sys
    import random
     
    entrees = ("4,7kOhm", "100Ohm", "18nF")
    couleurs = ["rouge", "vert", "bleu"]
     
     
    def calcul_multiplicateur_from_value(value):
        return random.choice(range(1, 1000))
     
     
    for entree in entrees:
        entree = entree.replace(',', '.')
        print(entree, "?")
        res = ""
        for c in entree:    # ne récupérer que le nombre
            if c.isdigit() or c == ".":
                res += c
            else:
                break
        value = float(res)
        print('valeur :', value)
     
        # maintenant, quel est l'unité ?
        if entree.endswith("kOhm"):
            value = value * 1000
            # mulplicateur = x
        elif entree.endswith("Ohm"):
            value = value * 1
            # mulplicateur = y
        elif entree.endswith("nF"):
            value = value / 10
     
        print('valeur en Ohm :', value)
        multiplicateur = calcul_multiplicateur_from_value(value)
     
        couleur_calculée = random.choice(couleurs)
        valeur_calculée = random.choice(range(0, len(couleurs)-1))
        # Avec le print on affiche un label sinon c'est du foutage de Gueul...
        print("Anneau 1:", couleur_calculée, valeur_calculée)
        couleur_calculée = random.choice(couleurs)
        valeur_calculée = random.choice(range(0, len(couleurs)-1))
        print("Anneau 2:", couleur_calculée, valeur_calculée)
    ps: oui, cela ne fonctionne pas mais ce n'est pas le but : en premier lieu on doit structurer son code pour comprendre ce que l'on fait. Et faire comprendre aux autres (ou a nous dans 2 ans ou plus). Un code illisible, c'est direction poubelle qu'il fonctionne ou pas
    Ce n'est pas le meilleur modèle, ici c'est un modèle possible qui représente clairement "ta" façon de penser et de traiter le problème

    -----------
    @Hominidé
    Ton lien est légal ? ce livre est bien tombé dans le donaine publique ??? j'ai de gros doutes. En dehors des lois, encourager le piratage, en tant que programmeur c'est un comble

    @Meton2
    Tu peux trouver ce livre (python3 !) dans différentes librairies en ligne pour un peu plus de 30euro

  16. #16
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 875
    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 875
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par papajoker Voir le message
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for c in entree:    # ne récupérer que le nombre
    	if c.isdigit() or c == ".":
    		res += c
    	else:
    		break
    "else break"... !!!

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for c in entree:    # ne récupérer que le nombre (sans gérer le souci d'un cas type 123.456.789)
    	if not c.isdigit() and c != ".": break
    	res += c

    Citation Envoyé par papajoker Voir le message
    -----------
    @Hominidé
    Ton lien est légal ? ce livre est bien tombé dans le domaine public ??? j'ai de gros doutes. En dehors des lois, encourager le piratage, en tant que programmeur c'est un comble
    Ben en cas de doute on vérifie plutôt que d'insinuer des choses. Ainsi on se rend compte en lisant simplement le livre qu'il est bel et bien offert gratuitement. Déjà c'est écrit en page 3 "Les notes qui suivent sont distribuées suivant les termes de la Licence de Documentation Libre" (le terme "notes" doit être pris au sens "ce livre") et d'ailleurs l'auteur lui-même le propose en téléchargement libre sur son site perso. Le seul reproche qu'on puisse éventuellement faire à Hominidé est d'avoir donné un lien différent que le lien officiel de l'ouvrage (si on doit noter la popularité d'un site en fonction de ses visiteurs, autant alors donner la préférence au site originel).

    Citation Envoyé par papajoker Voir le message
    @Meton2
    Tu peux trouver ce livre (python3 !) dans différentes librairies en ligne pour un peu plus de 30euro
    Ouais, on peut aussi payer ce qui est naturellement gratuit. Après-tout c'est ça aussi la liberté...
    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]

  17. #17
    Membre Expert
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    927
    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 : 927
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par papajoker Voir le message
    @Hominidé
    Ton lien est légal ?
    Oui ne t'inquiète pas. Je suis sensible aux droits d'auteur.
    Tu vois mon avatar? eh bien j'ai contacté l'auteur et je lui ai demandé la permission d'utiliser son image

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

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

    Citation Envoyé par Hominidé Voir le message
    Oui ne t'inquiète pas. Je suis sensible aux droits d'auteur.
    Ce livre est aussi disponible sur developpez, il y a deux versions une ancienne et une nouvelle (python 3).

    • Cours complet pour apprendre à programmer avec Python 3 par Gérard Swinnen
      Il s'agit d'un cours complet pour apprendre Python 3. Il va, dans un premier temps, aborder les bases de la programmation,de façon pratique, avec de nombreux exemples et exercices graphiques. Puis vous allez apprendre la programmation d'applications web complexes, avec Python, la réalisation de scripts système ou l'analyse de fichiers XML.
    • Tutoriel pour apprendre à programmer avec Python par Gérard Swinnen
      Ce cours est un excellent tutoriel pour débuter avec Python et avec la programmation. À travers ce tutoriel, vous allez apprendre les bases de la programmation notamment les types de données, les fonctions, les classes, l'interface graphique avec Tkinter, le développement web, la programmation réseau.



    Je crois que ton lien correspond à une ancienne version (python 2) ou je me trompe ?

    Merci.

    * Pour la version Python 3 on peut lire dans ce site :

    Cours de programmation Python 3

    Conçu à l'origine pour les élèves de l'enseignement secondaire belge, ce cours expérimental s'efforce de présenter l'apprentissage de la programmation sous une forme attrayante, avec de nombreux exemples et exercices graphiques.

    Distribué de manière tout à fait classique en librairie, il vous est également proposé ci-dessous en téléchargement gratuit, aux termes d'un accord passé avec l'éditeur Eyrolles.

    Droits de copie de cette version :
    Creative Commons
    Paternité - Pas d'utilisation commerciale - Partage des conditions initiales à l'identique.

    Et dans le pdf on peut lire :
    Copyright (C) 2000-2012 Gérard Swinnen

    L'ouvrage qui suit est distribué suivant les termes de la Licence Creative Commons « Paternité-Pas
    d'Utilisation Commerciale-Partage des Conditions Initiales à l'Identique - 2.0 France ».

    Cela signifie que vous pouvez copier, modifier et redistribuer ces pages tout à fait librement, pour
    autant que vous respectiez un certain nombre de règles qui sont précisées dans cette licence, dont le
    texte complet peut être consulté dans l'annexe C, page 445.

    Pour l'essentiel, sachez que vous ne pouvez pas vous approprier ce texte pour le redistribuer ensuite
    (modifié ou non) en définissant vous-même d'autres droits de copie. Le document que vous
    redistribuez, modifié ou non, doit obligatoirement inclure intégralement le texte de la licence citée
    ci-dessus, le présent avis et la préface qui suit. L'accès à ces notes doit rester libre pour tout le monde.

    Vous êtes autorisé à demander une contribution financière à ceux à qui vous redistribuez ces notes,
    mais la somme demandée ne peut concerner que les frais de reproduction. Vous ne pouvez pas
    redistribuer ces notes en exigeant pour vous-même des droits d'auteur, ni limiter les droits de
    reproduction des copies que vous distribuez. La diffusion commerciale de ce texte en librairie, sous la
    forme classique d'un manuel imprimé, est réservée exclusivement à la maison d'édition Eyrolles
    (Paris).

  19. #19
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 334
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 334
    Par défaut
    Désolé pour tout ce bruit pour rien

    @Hominidé
    Désolé pour la gêne que j'ai pu te causer. En fait j'ai du (sûrement) m'emmêler dans les onglets ouverts : Si j'ai écrit ce message c'est que j'avais un pdf devant les yeux mais avec mention de "Eyrolles" en première page et ce n'est clairement pas le cas ici, j'avais fait une recherche sur l'auteur à la suite et je ne sais ou elle m'a menée (clairement ou il ne fallait pas)

  20. #20
    Membre Expert
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    927
    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 : 927
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par papajoker Voir le message

    @Hominidé
    Désolé pour la gêne que j'ai pu te causer.
    Pas de souci

Discussions similaires

  1. [XL-365] Petit exercice sur les macros - Colorier des cases selon 2 conditions / Pas de MFC
    Par TruffExcel dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 02/07/2020, 20h08
  2. Votre avis sur (en)codage texte des pages HTML
    Par cat75 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 26/10/2016, 16h31
  3. compatiblité IE et Firfox sur la couleur des bordures
    Par pyranha dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 21/02/2008, 22h50
  4. [MCD] Où trouver des exercices sur les MCD ?
    Par quaresma dans le forum Schéma
    Réponses: 4
    Dernier message: 24/01/2008, 22h27
  5. Réponses: 4
    Dernier message: 01/12/2006, 11h22

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