for x in range(6):
why = str(x+1)
outf.write(why)
其中 outf 是一个文件
给我:
why = str(x+1)
TypeError: expected a character buffer object
我不相信您已经发布了您正在运行的代码,但是还有其他编写它的方法可以避免显式调用str
和 +1'ing(假设每行一个数字和 2.x):
for i in xrange(1, 7): # save the +1
print >> fout, i
fout.writelines('{}\n'.format(i) for i in xrange(1, 7))
from itertools import islice, count
fout.writelines('{}\n'.format(i) for i in islice(count(1), 6))
为我工作(在 ipython,python 2.7 中):
In [1]: outf = open('/tmp/t', 'w')
In [2]: for x in range(6):
...: why = str(x+1)
...: outf.write(why)
In [3]: outf.close()
文件内容:123456
你用的是什么python版本?
这对我有用
outf = open('/temp/workfile', 'w')
for x in range(6):
why = str(x+1)
outf.write(why)
outf.flush()
outf.close()
/temp/workfile
包含123456
假设您是 Python 新手...
new_File = open('mynewfile.txt', 'wr')
for x in range(6):
new_File.write(str(x)+'\n')
new_File.close()
将为您提供一个名为“mynewfile.txt”的文件的输出,该文件如下所示:
0
1
2
3
4
5
就您粘贴的代码而言,您还没有告诉我们其他一些事情……这很好用。
for x in range(6):
why = str(x+1)
print why
1
2
3
4
5
6