使用Python开发文本编辑器遇TypeError错误,求技术解决方案
解决Python文件写入的TypeError问题
错误原因
TextIOWrapper.write() 方法仅接受单个字符串参数,你在调用时一次性传入了10个变量,违反了方法的参数要求,因此触发了 TypeError。
修正方案
方案1:拼接参数为单个字符串
将所有输入的内容拼接成一个字符串后再传入 write():
one = input() two = input() three = input() four = input() five = input() six = input() seven = input() eight = input() nine = input() ten = input() f = open("guru99.txt", "w+") # 用换行符拼接所有输入内容,也可根据需求改用其他分隔符 content = '\n'.join([one, two, three, four, five, six, seven, eight, nine, ten]) f.write(content) f.close()
方案2:优化代码(推荐)
用循环收集输入,同时使用 with 语句自动管理文件资源(无需手动关闭文件):
# 循环收集10次输入,避免重复代码 lines = [input() for _ in range(10)] # with语句会自动关闭文件,更安全简洁 with open("guru99.txt", "w+") as f: # 拼接所有内容写入 f.write('\n'.join(lines)) # 若需要逐行写入,可替换为: # for line in lines: # f.write(line + '\n')
内容的提问来源于stack exchange,提问作者ItzArmin2010
相关产品推荐
相关产品推荐

