Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1698 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  un problème d'un mon programme ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

un problème d'un mon programme ?

n°2241354
alex9669
Posté le 27-10-2014 à 17:47:05  profilanswer
 

Bonjour à tous,
Il doit y avoir un problème dans mon programme. Je voudrais rajouter des listes à ma liste. je m'explique :  
J'aimerais faire une liste comme celle ci : [[0], [1], [1, 0], [1, 1], [1, 0, 0]], seulement, cela ne fait pas ce que je veux. voici mon programme:  
 
def parcours(n):
    A = [0]
    L=[A]
    print([A])
    for i in range(1,2**n):
        A=plus1(A)
        L.append([A])
        print([A])
    return L

 
Les print(A) n'ont aucune utilité ici, ils me permetttent de savoir ce que j'ai en fin de boucle. Il se trouve que j'ai ce qu'il faut, c'est à dire :  
[0]  
[1]
[1, 0]
[1, 1]
[1, 0, 0]
mais je n'arrive pas à les assembler.le programme m'affiche :  
[[0], [[0]], [[0, 0]], [[0, 0]], [[1, 0, 0]]]
que faire ?

mood
Publicité
Posté le 27-10-2014 à 17:47:05  profilanswer
 

n°2241355
alex9669
Posté le 27-10-2014 à 17:49:52  profilanswer
 

j'ai oublié de dire que :  
0base10=0en base 2
1base10=[1]
2base10=[1, 0]
et plus1 me permet de rajouter 1 à [0], pour avoir 1,  
autrement dit, il me permet d'avoir n en base 2, à partir de n-1 en base 2

n°2241375
rage2000
Posté le 27-10-2014 à 20:39:33  profilanswer
 

Il y a pas une erreur dans ton exemple ?  
 
C'est pas plutôt [[0], [1], [1, 0], [1, 1], [1, 1, 0]] que tu veux ? (Bref une suite de pseudo binaire ?) Car sinon je comprend pas la logique ?
Si c'est ca il y a moyen de truander en castant en liste une valeur binaire et en enlevant les 2 1ers caractères.
 
Exemple:

Code :
  1. >>> bin(3)
  2. '0b11'
  3. >>> list(bin(3))
  4. ['0', 'b', '1', '1']
  5. >>> list(bin(3))[2:]
  6. ['1', '1']


 
Du coup simplement dans une liste en compréhension:

Code :
  1. >>> [list(bin(i))[2:] for i in range(0,2**4)]
  2. [['0'], ['1'], ['1', '0'], ['1', '1'], ['1', '0', '0'], ['1', '0', '1'], ['1', '1', '0'], ['1', '1', '1'], ['1', '0', '0', '0'], ['1', '0', '0', '1'], ['1', '0', '1', '0'], ['1', '0', '1', '1'], ['1', '1', '0', '0'], ['1', '1', '0', '1'], ['1', '1', '1', '0'], ['1', '1', '1', '1']]


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  un problème d'un mon programme ?

 

Sujets relatifs
Problème programme ( raspberry + arduino )Problème programme C
[Ajax + Js ] Problème pour un programmeProblème programme calculatriceTI-89 T
urgent: problème d'exécution d'aun programmeProblème programme c
Perl [Modification d'un programme existant] Probleme avec Ifproblème pour écrire un programme
Problème du connexion à BD Mysql dans un programme CProblème sur un programme VBA lorsqu'on ouvre 2 fichiers excel
Plus de sujets relatifs à : un problème d'un mon programme ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR