TypeError:期望一个字符缓冲区对象

时间:2014-06-26 20:50:24

标签: python

将值写入文件时遇到以下错误。你能帮我解决一下这里的问题以及如何解决这个问题吗?

row = 649
with open(r'\\loc\dev\Build_ver\build_ver.txt','r+') as f:
    f.write(row)
print row

错误:

Traceback (most recent call last):
  File "latest_rev.py", line 6, in <module>
    f.write(row)
TypeError: expected a character buffer object

3 个答案:

答案 0 :(得分:31)

假设您只想将字符串'649'写入文件,请将row更改为'649'或发出f.write(str(row))

答案 1 :(得分:0)

在我的代码中,我有同样的错误:

s.traslate(table)

s obj是string。问题是s.translate正在使用unicode字符串。因此,解决方法是使用:

unicode(s).translate(table)

答案 2 :(得分:0)

您可以做timgeb做的事,也可以做

row = str(649)