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 :

Qrcode via liste binaire


Sujet :

Python

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Janvier 2016
    Messages : 2
    Par défaut Qrcode via liste binaire
    Bonsoir (ou bonjour ^^ vue l'heur)
    j'ai un programme a faire pour mon bac blanc d'ISN qui consiste a renter un identifiant: nom/prénom/date de naissance
    à le convertir en décimal puis en binaire pour ensuite multiplier ma liste afin d'obtenir au moins 2500 caractères
    je dois ensuite utiliser cette liste pour créer une image où les 0 de la liste représenterons un pixel blanc et les 1 un pixel noir
    voila la 1er partie du programme qui donne la liste en binaire:

    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
    # Créé par utilisateur, le 06/01/2016 en Python 3.2
     
     
    def liste1(id):                                                                  #Converstion d'un identifiant, en Ascii, en décimal (base 10).
     
        ascii=[ord(i) for i  in id]
        return ascii                                                                #Identifiant Stocké dans une liste, en mode décimal (base 10).
     
     
     
    def liste2(id):                                                                  #Convertion de la liste 1 (code 1), en une Liste 2 permettant de regrouper 2 indices en un autre indice. ((indice 1 * 45) + indice 2)
     
     
        Liste=[]                                                                    #Nouvelle liste (liste 2)
        nb=len(id)                                                                  #Determination du nombre d'indices dans la liste.
        ResteZ=nb//2                                                                #Cas ou le Nombre d'indice de la liste 1 est pair. Soit un reste de 0 (Z comme 0)
        ResteU=((nb-1) // 2)                                                        #Cas ou le Nombre d'indice de la liste 1 est inpair. Soit un reste de 1 (U comme 1)
        v = 0                                                                       #Variable 'v' (representant les différent indices de la liste 1)
     
        if nb%2 == 0 :                                                              #Cas ou le nombre d'indice est paire. Il reste 0 une fois regroupé par pair
     
            for i in range(ResteZ):                                                 #Boucle, du cas pair, permettant de regrouper les indices 2 par 2
     
               d = (id[v] * 45) + id[v+1]                                           #Implication de la variable pour modifier la liste
               Liste.append(d)                                                      #Stockage du nouvelle indice dans la liste 2
               v = v + 2                                                            #Changement d'indice
     
        else:                                                                       #Cas Impair, permettant de regrouper les indices 2 par 2
            for i in range(ResteU):                                                 #Boucle, du cas inpair.
                d = ((id[v] * 45) + id[v+1])                                        #Implication de la variable pour modifier la liste
                Liste.append(d)                                                     #Stockage du nouvelle indice dans la liste 2
                v = v + 2
        Liste.append(id[-1])                                                        #Stockage de l'indice seul, dans la liste 2 (cas impair)
        return Liste                                                                #Retour de la liste
     
    #PROGRAMME
     
    ID = input("Votre: 'NOM' 'Prénom' Date de naissance: 'JJ/MM/AAAA' ")             #Demande de Saisi du 'NOM' 'Prénom' Date de naissance :'JJ/MM/AAAA'
    x = liste1(ID)                                                                   #Utilisation de la fonction liste1
    x = liste2(x)                                                                   #Utilisation de la fonction liste2
    print(x)
     
    if len(ID)%2!= 0:
            z=(format((x[-1]),'08b'))
     
    liste=[]
    liste2=[]
    liste3=[]
    for car in x:
     
        if car%2 == 0:
            liste2.append(format((car), "13b"))                                     # convertie chaque caractères en binaires sur 13bits
     
        else:
            liste2.append(format((car), "013b"))
                                                                                    # convertie chaque caractères en binaires sur 13bits
    liste2[-1]=z
    print(liste2)
    y=(",".join(liste2))
    print(y)
    for car in str(y):
        if car!=",":
            if car!=" ":
                liste3.append(int(car))
    print(liste3)
    print(len(liste3))
    liste4=(liste3*11)
    print(liste4)
    print(len(liste4))
    mais ensuit je ne vois pas comment faire pour lire ma liste afin que 0 traduise un pixel blanc et 1 un noir
    j'ai commencer par créer une image mais après avec (img.putpixel((y,x),p)) je ne vois pas comment changer les pixel de mon image
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [E-03] Image via liste déroulante.
    Par Blop le bricoleur dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/10/2008, 09h05
  2. [formulaire]mode edition via liste deroulante
    Par profane dans le forum IHM
    Réponses: 1
    Dernier message: 20/04/2007, 15h57
  3. Réponses: 4
    Dernier message: 04/04/2007, 18h41
  4. Passer paramètres via liste déroulante
    Par Jiraiya42 dans le forum Langage
    Réponses: 8
    Dernier message: 01/04/2007, 11h15
  5. changement d'enregistrement via liste déroulante
    Par rahan_dave dans le forum Access
    Réponses: 3
    Dernier message: 13/10/2005, 18h47

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