I have a list of lists that looks something like this:
data = [['seq1', 'ACTAGACCCTAG'],
['sequence287653', 'ACTAGNACTGGG'],
['s9', 'ACTAGAAACTAG']]
I write the information to a file like this:
for i in data:
for j in i:
file.write('\t')
file.write(j)
file.write('\n')
The output looks like this:
seq1 ACTAGACCCTAG
sequence287653 ACTAGNACTGGG
s9 ACTAGAAACTAG
The columns don't line up neatly because of variation in the length of the first element in each internal list. How can I write appropriate amounts of whitespace between the first and second elements to make the second column line up for human readability?
for me is even clearer than expression with loop
You need a format string:
%-15s
means left justify a 15-space field for a string. Here's the output:"%10s" % obj
will ensure minimum 10 spaces with the string representation of obj aligned on the right."%-10s" % obj
does the same, but aligns to the left.