我有一個簡單的函數,排序詞典:寫排序結果文件
data = inputfile.readlines()
lineData = sorted(data, key=len, reverse=True)[:3]
打印輸出:
print sorted(data, key=len, reverse=True)[:3]
產生預期的結果,但是寫入文件:
outputfile.writelines sorted(data, key=len, reverse=True)[:3]
什麼都不產生。如何將輸出寫入文本文件(outputfile)? 完整的代碼如下:
import sys, string
inputfilenames, outputfilename = sys.argv[1:-1], sys.argv[-1]
def do_something_with_input(inputfile):
data = inputfile.readlines()
print sorted(data, key=len, reverse=True)[:3]
print sys.path[0]+"/"+ outputfilename
def write_results(outputfile):
data = inputfile.readlines()
outputfile.writelines(sorted(data, key=len, reverse=True)[:3])
for inputfilename in inputfilenames:
inputfile = open(inputfilename, "r")
do_something_with_input(inputfile)
outputfile = open(outputfilename, "w")
write_results(outputfile)
謝謝。修改write_results函數正是我需要做的。 – kjarsenal 2010-06-24 15:04:52