开发者

How to print a linebreak in a python function?

I have a list of strings in my code;

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

and I want to print them separated by a linebreak, like this:

>a1
b1
>a2
b2
>a3
b3

I've t开发者_如何学Pythonried:

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

But /n isn't recognized like a line break.


You have your slash backwards, it should be "\n"


The newline character is actually '\n'.


All three way you can use for newline character :

'\n'

"\n"

"""\n"""


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

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

Outputs:

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

Notice that you are using /n which is not correct!


for pair in zip(A, B):
    print ">"+'\n'.join(pair)


\n is an escape sequence, denoted by the backslash. A normal forward slash, such as /n will not do the job. In your code you are using /n instead of \n.


You can print a native linebreak using the standard os library

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


Also if you're making it a console program, you can do: print(" ") and continue your program. I've found it the easiest way to separate my text.


A = ['a1', 'a2', 'a3'] 
B = ['b1', 'b2', 'b3']
for a,b in zip(A,B): 
    print(f">{a}\n{b}")

Below python 3.6 instead of print(f">{a}\n{b}") use print(">%s\n%s" % (a, b))

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜