我是python的新手,也是编码新手。 我还没有找到这个问题的具体答案,但我相信这很简单。
我能够在"r+"模式下打开一个文件,并根据原始输入向其写入字符串。 它运行良好,并且它写入文件的原始输入,但是命令行上的下一行会自动返回单词"None"。
这是我的代码
打印 txt.read((
打印"请输入一些文本以添加到文件中:">
print txt.write(raw_input('>'((
打印"谢谢">
这是回报
请输入一些文本以添加到文件中:
这是上午 11:26 的一些文字
没有
谢谢
如何摆脱此"无"输出,是什么原因造成的?我一直在寻找返回参数,但我不知道该怎么做。
另外,如何使原始输入字符串位于我正在写入的文档的新行上?
谢谢!
简短回答 - 从第 3 行中删除print
。
您的txt.write(raw_input('>'))
写入文件,并且不返回由 None 表示的任何内容。
如果你编写自己的函数而不返回,也会发生同样的情况:
def test():
print 'None appears below me'
print test()
#None appears below me
#None
在这种情况下,你只需要调用它,它就会打印:
test()
#None appears below me
write()
方法也是如此。
对于换行符使用txt.write(raw_input('>') + 'n')
当你执行txt.write(raw_input(">"))
时,你的代码将输入写入文件,正确。但是,该函数不会return
任何东西 - 它不需要。它是那些只是自己做事的功能之一。
要摆脱它,只是不要打印它!
从print txt.write(raw_input('> '))
中删除print
。它打印None
的原因是因为内置file.write()
不返回任何内容,它只是写入文件。如果要查看用户输入的输入,请执行以下操作:
text=raw_input('Enter some text to add to the file > ')
print text
txt.write(text)
print 'Thanks'
python 2.7 no return
帮助(F.写( 内置函数写入帮助:
写(... 写(str( -> 无。 将字符串 str 写入文件。
Note that due to buffering, flush() or close() may be needed before
the file on disk reflects the data written.
蟒蛇3.5
帮助(F.写( 内置函数写入帮助:
写(文本,/(方法_io。TextIOWrapper 实例 将字符串写入流。 返回写入的字符数(始终等于 字符串的长度(。