how to print directly to a text file in both pytho

2020-07-02 09:58发布

Instead of using write(), what are the other way to write to a text file in Python 2 and 3?

file = open('filename.txt', 'w')
file.write('some text')

2条回答
forever°为你锁心
2楼-- · 2020-07-02 10:35
f = open('filename.txt','w')

# For Python 3 use
print('some Text', file=f)

#For Python 2 use
print >>f,'some Text'
查看更多
家丑人穷心不美
3楼-- · 2020-07-02 10:44

You can use the print_function future import to get the print() behaviour from python3 in python2:

from __future__ import print_function
with open('filename', 'w') as f:
    print('some text', file=f)

If you do not want that function to append a linebreak at the end, add the end='' keyword argument to the print() call.

However, consider using f.write('some text') as this is much clearer and does not require a __future__ import.

查看更多
登录 后发表回答