如何将a=1+1的运算结果写入txt文件 解决write()参数需为str而非int问题
错误原因
write()方法要求传入的写入内容必须为字符串(str)类型,你代码中计算得到的a = 1+1是整数(int)类型,直接传入就会触发类型不匹配错误。
可行实现方案
方案1:直接转换变量类型
用内置str()函数把整数转成字符串后再写入,示例代码:
a = 1 + 1 w = open('r.txt', 'w') w.write(str(a)) w.close() # 操作完文件后必须手动关闭文件对象,避免资源占用
方案2:用上下文管理器(更推荐)
用with语句操作文件,会自动完成文件关闭操作,不需要手动调用close(),避免漏关文件的问题:
a = 1 + 1 with open('r.txt', 'w') as w: w.write(str(a))
补充场景:需要写入带格式的多段内容
如果要同时写入说明文字和计算结果,可以用f-string格式化,自动完成类型转换:
a = 1 + 1 with open('r.txt', 'w') as w: w.write(f"1+1的计算结果是:{a}") # 写入后txt文件内容为:1+1的计算结果是:2
内容的提问来源于stack exchange,提问作者Kunal Telangi
相关产品推荐
相关产品推荐

