On 2011-10-08 05:34, lina wrote:
Another minor derived questions:
summary=[]
for a,b in zip(results['E'],results['B']):
summary.append(a+b) ## now the summary is '[0,1, 3, 5,
6,0,0,0]'
del summary[0] ## here I wanna remove the first zero, which came
from the initial double quote "EB...E",
summary.pop() ## here I wanna remove the last three zeros
summary.pop()
summary.pop()
print(summary) ### output is [1,3,5,6]
summary='\n'.join(str(summary).split(',')) ### wish the result in
one column,
with open(base+OUTFILEEXT,"w") as f:
f.write(str(summary))
the final result in the output.txt file is:
[1
3
5
6]
Q1: how can I remove the [1 "[" to only keep 1?
That's a job for a list comprehension (read
http://docs.python.org/py3k/tutorial/datastructures.html#list-comprehensions
for a short introduction):
new_summary = '\n'.join([str(element) for element in summary])
Q2 how can I improve above expressions?
-) As above, you could use a list comprehension for creating your
summary list:
summary = [(a + b) for a, b in zip(results['E'], results['B'])]
-) Instead of
del summary[0]
summary.pop()
summary.pop()
summary.pop()
I suggest to slice your list:
summary = summary[1:-3]
But this assumes that your summary list will always have one leading
zero and 3 trailing zeros.
-) In your last line
with open(base+OUTFILEEXT,"w") as f:
f.write(str(summary))
you don't need to convert summary to a string because it is already one.
Bye, Andreas
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor