Python 使用writelines和append创建不起作用的文件

Python 使用writelines和append创建不起作用的文件,python,python-3.x,file,append,console.writeline,Python,Python 3.x,File,Append,Console.writeline,我正在尝试创建一个文件,该文件只将用户名写入文件。我写过: def main(): f=open("name.txt","a") name=input("name:") f.writelines(name) f.close() main() 我想知道为了让它工作我缺少了什么,因为它没有保存到文本文件中。此外,我正在使用append,这样我可以多次运行此程序并不断向其添加名称。代码工作正常,但我怀疑它为什么不适合您 在控制台中,使用input函数,您需要告诉程序您

我正在尝试创建一个文件,该文件只将用户名写入文件。我写过:

def main():
    f=open("name.txt","a")
    name=input("name:")
    f.writelines(name)
    f.close()
main()

我想知道为了让它工作我缺少了什么,因为它没有保存到文本文件中。此外,我正在使用append,这样我可以多次运行此程序并不断向其添加名称。

代码工作正常,但我怀疑它为什么不适合您

在控制台中,使用
input
函数,您需要告诉程序您正在向他发送字符串。 当它询问姓名时,您不应该输入例如
Bernard
,而应该输入
“Bernard”

如果要删除
字符,则应使用
原始输入


PS:您是否尝试过使用python命令在控制台中运行程序?您可能会看到错误消息弹出。

代码工作正常,但我怀疑为什么不适合您

在控制台中,使用
input
函数,您需要告诉程序您正在向他发送字符串。 当它询问姓名时,您不应该输入例如
Bernard
,而应该输入
“Bernard”

如果要删除
字符,则应使用
原始输入


PS:您是否尝试过使用python命令在控制台中运行您的程序?您可能会看到错误消息弹出。

input
用于读取整数

使用
原始输入
。很多人不建议使用输入


有可能是重复的:

输入用于读取整数

使用
原始输入
。很多人不建议使用输入



有可能是重复的:

f.close()应该是一个方法调用
f.close()
感谢您的捕获,不幸的是它仍然没有保存。请在关闭之前尝试执行刷新,就像
f.flush()
f.flush()仍然无法工作。您是否有权在当前目录中直接写入?f.close应该是一个方法调用
f.close()
感谢您的帮助,很遗憾,它仍然无法保存。请尝试在关闭前刷新,如
f.flush()
f.flush()仍然无法工作。您是否有权直接在当前目录中写入?即使我输入带有引号的“Bernard”,它仍然无法保存。我也有Python3,所以原始输入只是meI的输入,没有安装Python3.x。不过,在Python2.7中,您的脚本确实适用于我。尝试执行
f.write(name)
而不是
f.writelines(name)
?f.write(name)仍然无法保存我的文件,不幸的是,即使我输入了带有引号的“Bernard”,它仍然无法保存。我也有Python3,所以原始输入只是meI的输入,没有安装Python3.x。不过,在Python2.7中,您的脚本确实适用于我。尝试执行
f.write(name)
而不是
f.writelines(name)
?不幸的是,f.write(name)仍然没有保存我的文件。我有python 3.x,所以原始输入不是meOps的函数,没有看到它。。无论如何,只要安装Python3.6.3就可以了,您的代码运行良好。例外情况是什么?或者它只是不创建/保存文件?它只是不创建和保存文件您是否尝试为要保存的文件设置路径?(我假设您正在运行windows)类似于:path=“C:/Users//Desktop/name.txt”,然后是f=open(path,“a”),否则它将在您正在运行的目录中创建文件。pyI有python 3.x,所以原始输入不是meOps的函数,没有看到它。。无论如何,只要安装Python3.6.3就可以了,您的代码运行良好。例外情况是什么?或者它只是不创建/保存文件?它只是不创建和保存文件您是否尝试为要保存的文件设置路径?(我假设您正在运行windows)类似于:path=“C:/Users//Desktop/name.txt”,然后是f=open(path,“a”),否则它将在您运行.py的目录中创建文件