I am complete beginner in Python. I have tried many methods from stackoverflow answers on this question, but neither of them works in my script.
I have this little script to use, however I can not get the huge result to .txt file so I can analyize the data. How do I redirect the print output to txt file on my computer?
from nltk.util import ngrams
import collections
with open("text.txt", "rU") as f:
sixgrams = ngrams(f.read().decode('utf8').split(), 2)
result = collections.Counter(sixgrams)
print result
for item, count in sorted(result.iteritems()):
if count >= 2:
print " ".join(item).encode('utf8'), count
解决方案
print statement in Python 2.x support redirection (>> fileobj):
...
with open('output.txt', 'w') as f:
print >>f, result
for item, count in sorted(result.iteritems()):
if count >= 2:
print >>f, " ".join(item).encode('utf8'), count
In Python 3.x, print function accepts optional keyword parameter file:
print("....", file=f)
If you do from __future__ import print_function in Python 2.6+, above approach is possible even in Python 2.x.