Python 有一个';不支持对str进行解码';错误
我试图通过要求用户输入食物来创建一个随机菜单生成器,每次他们输入食物时,我都希望它在.txt文件中开始一个新行,但我得到一个“字符串不支持错误” 我已经尝试删除“文件”“\n”之前的str(),但在其他网站上找不到多少帮助Python 有一个';不支持对str进行解码';错误,python,Python,我试图通过要求用户输入食物来创建一个随机菜单生成器,每次他们输入食物时,我都希望它在.txt文件中开始一个新行,但我得到一个“字符串不支持错误” 我已经尝试删除“文件”“\n”之前的str(),但在其他网站上找不到多少帮助 name = open("food.txt", "a") file = input("please enter food you like: ") file = str(file,"\n") name.write(file) name.close() open1 = ope
name = open("food.txt", "a")
file = input("please enter food you like: ")
file = str(file,"\n")
name.write(file)
name.close()
open1 = open("food.txt", "r")
print (open1.read())
我希望它只是创建一个在末尾有新行的变量,但我得到一个“不支持解码str”错误如果您只使用
打印
,问题就没有意义了:
with open("food.txt", "a") as f:
food = input("Please enter a food you like: ")
print(food, file=f)
str()
的第二个参数是编码类型,如utf-8
。你把“\n”
放在那里是什么意思?您不需要调用str()
,因为input()
返回一个字符串。我想您的意思是file=file+“\n”
可能重复的input()
返回一个字符串,至少在Python 3中是这样,那么您使用的是哪个版本?(提示:添加相应的标签)。作为一个新用户,还需要阅读。@UlrichEckhardt根据预期的输入,input
几乎肯定会引发namererror
,如果这是Python 2。