17

除了使用write()之外,在 Python 2 和 3 中写入文本文件的另一种方法是什么?

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

2 回答 2

42

您可以使用print_function 未来的导入从 python2 中的 python3获取print()行为:

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

如果您不希望该函数在末尾附加换行符,请将end=''关键字参数添加到print()调用中。

但是,请考虑使用f.write('some text'),因为这更清晰并且不需要__future__导入。

于 2012-05-04T08:58:19.523 回答
10
f = open('filename.txt','w')

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

#For Python 2 use
print >>f,'some Text'
于 2012-05-04T08:57:43.393 回答