我有一个名为sorted_lists的列表
我使用它将它们写入到一个txt文件中。现在的问题是,下面这行打印所有的列表。我正在尝试弄清楚如何只打印前n个(n =任何数字),例如前10个列表。
f.write ("\n".join("\t".join (row) for row in sorted_lists)+"\n")发布于 2012-12-17 07:50:02
尝试以下操作:
f.write ("\n".join("\t".join (row) for row in sorted_lists[0:N])+"\n")
其中N是要打印的第一个N列表的编号。
sorted_lists[0:N]将捕获第一个N列表(从0到N-1,总共有N个列表;不包括list[N] )。您还可以编写sorted_lists[:N],这意味着它将从列表的第一个项目(项目0)开始。它们是一样的,后者可能被认为更优雅。
发布于 2012-12-17 07:49:02
f.write ('\n'.join('\t'.join(row) for row in sorted_lists[:n+1])+'\n')
其中n是列表的数量。
发布于 2012-12-17 07:53:15
为什么不简化这段代码并使用正确的工具:
from itertools import islice
import csv
first10 = islice(sorted_lists, 10)
with open('output.tab', 'wb') as fout:
tabout = csv.writer(fout, delimiter='\t')
tabout.writerows(first10)https://stackoverflow.com/questions/13906645
复制相似问题