Python实现多行文本输入并保存至文件的两种方法
本文介绍在Python中解决input函数遇回车即结束输入的问题,通过两种代码示例展示如何持续接收用户多行输入并保存至指定文本文件。第一种利用iter函数配合哨兵值,第二种采用while循环判断退出条件,均支持以特定指令结束输入并保存内容。
在使用input函数获取用户输入时,若用户按下回车键,程序通常会立即执行后续代码并结束当前输入环节,导致无法继续录入多行内容。
造成这一现象的原因是Python默认将回车键视为输入结束的标志。为了实现多行内容的连续输入,需要修改这一行为,设定在检测到特定终止字符时才结束输入过程。
例如,我们需要实现一个功能:
首先提示用户输入文件名,如:悯农.txt
接着提示用户输入文件内容,并说明单独输入':q'可以保存并退出:
用户输入第一行内容:锄禾日当午,汗滴禾下土。
用户输入第二行内容:谁知盘中餐,粒粒皆辛苦。
以下是实现该功能的代码示例:
# -*- coding: utf-8 -*-
file_name=input("请输入文件名:")
file_name=file_name+".txt"
something_file=open(file_name,"w")
stopword=":q"
file_content=""
print("请输入内容【单独输入‘:q‘保存退出】:")
for line in iter(input,stopword):
file_content=file_content+line+"\n"
print (file_content,file=something_file)
something_file.close()
另一种实现方式如下:
# -*- coding: utf-8 -*-
def file_write(file_name):
f = open(file_name, 'w')
print('请输入内容【单独输入\':q\'保存退出】:')
while True:
file_content = input()
if file_content != ':q':
f.write('%s\n' % file_content)
else:
break
f.close()
file_name = input('请输入文件名:')
file_write(file_name)
以上分享的Python多行输入并保存文件的实例仅供参考,希望能帮助读者解决类似问题,欢迎大家继续支持本站获取更多技术内容。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













