【发布时间】:2017-10-25 13:54:33
【问题描述】:
我想编写一个文本文件,其中包含以下格式的一些行:
result: variable1 +/- error1
result: variable2 +/- error2
等等……到目前为止我有:
f = open('file_{a}.txt'.format(a=some_name), 'w')
for i in range(len(variable)):
f.write('result: ', variable[i], '+/-', error[i], '\n')
变量和错误是浮点数,而some_name是字符串。
但我收到一个错误:
TypeError: 应为字符串或其他字符缓冲区对象
我想我需要以不同的方式格式化f.write 行,但我不知道怎么做。该文件只需要人类阅读,因此实际格式可以更改。
谢谢!
【问题讨论】:
-
variable[i]和/或error[i]可能是数字而不是字符串(这是write期望您提供的。试试f.write('result: ', str(variable[i]), '+/-', str(error[i]), '\n') -
您能否提供有关变量
variable、error、some_name的更多信息?似乎您没有提供字符串。 -
举个例子说明
variable和error是什么
标签: python list file file-writing