web-dev-qa-db-fra.com

Comment imprimer un saut de ligne dans une fonction python?

J'ai une liste de chaînes dans mon code;

A = ['a1', 'a2', 'a3' ...]
B = ['b1', 'b2', 'b3' ...]

et je veux les imprimer séparés par un saut de ligne, comme ceci:

>a1
b1
>a2
b2
>a3
b3

J'ai essayé:

print '>' + A + '/n' + B

Mais/n n'est pas reconnu comme un saut de ligne.

76
Geparada

Vous avez votre barre oblique en arrière, il devrait être "\n"

204
Winston Ewert

Le caractère de nouvelle ligne est en réalité '\n'.

30
zeekay
for pair in Zip(A, B):
    print ">"+'\n'.join(pair)
9
inspectorG4dget
>>> A = ['a1', 'a2', 'a3']
>>> B = ['b1', 'b2', 'b3']

>>> for x in A:
        for i in B:
            print ">" + x + "\n" + i

Les sorties:

>a1
b1
>a1
b2
>a1
b3
>a2
b1
>a2
b2
>a2
b3
>a3
b1
>a3
b2
>a3
b3

Notez que vous utilisez /n qui est not correct!

6
Trufa

Vous pouvez utiliser les trois manières pour le caractère de nouvelle ligne:

'\n'

"\n"

"""\n"""
2
Varun_k

De plus, si vous en faites un programme console, vous pouvez faire: print(" ") et continuer votre programme. J'ai trouvé le moyen le plus simple de séparer mon texte.

0
INfoUpgraders

\n est une séquence d'échappement, indiquée par une barre oblique inversée. Une barre oblique normale, telle que /n ne fera pas le travail. Dans votre code, vous utilisez /n au lieu de \n.

0
user6536489

Vous pouvez imprimer un saut de ligne natif à l'aide de la bibliothèque standard os

import os
with open('test.txt','w') as f:
    f.write(os.linesep)
0
philshem