nouvelle ligne avec la variable en python
Lorsque j'utilise "\n"
dans mon print
fonction, il me donne une erreur de syntaxe dans le code suivant
from itertools import combinations
a=[comb for comb in combinations(range(1,96+1),7) if sum(comb) == 42]
print (a "\n")
Est-il possible d'ajouter une nouvelle ligne dans chaque combinaison?
- Où en êtes-vous à l'aide de "\n"?
- print (un "\n") comme ceci @mprat
- vous faire de mal concaténation de la chaîne. Checkout ce
- Est-ce Python 2 et Python 3?
- ok @sємsєм je vais vérifier cela
- Python 3 @EdwardMinnix
- Ceci est sans rapport avec le problème, mais en faisant des combinaisons de nombres jusqu'à 97, et puis ne garder que les combinaisons qui ajouter jusqu'à 42 est une perte de temps de traitement. Sur le sujet, je suis également pas sûr de l'impression d'un
\n
aprèsa
permettra d'améliorer la lisibilité... peut-être que vous voulez imprimer une nouvelle ligne après chaque combinaison? - changer la combinaison d'un nombre différent je veux juste faire toutes les combinaisons nouvelle ligne @PauloAlmeida
for combination in a: print(combination)
faire ce que vous souhaitez.- merci beaucoup @PauloAlmeida
Vous devez vous connecter pour publier un commentaire.
La
print
fonction déjà ajoute un saut de ligne pour vous, donc si vous voulez imprimer suivie par un retour à la ligne, faire (parens obligatoire puisque c'est Python 3):Si le but est d'imprimer les éléments de
a
séparés par des retours à la ligne, vous pouvez boucle explicitement:ou d'abus star déballage de le faire que d'une seule instruction, à l'aide de
sep
de diviser les sorties sur les différentes lignes:Si vous voulez une ligne vide entre les sorties, pas juste un saut de ligne, ajouter
end="\n\n"
pour les deux premiers, ou modifiersep
àsep="\n\n"
pour la dernière option.Deux possibilités:
Cela fonctionnera pour vous:
J'ai utilisé 1,2...6 dans mon exemple et de 2 longueur de tuples avec une combinaison somme de 7.
Sortie