鱼C论坛

 找回密码
 立即注册
查看: 2207|回复: 4

[已解决]《零基础入门学习Python》›第029讲课后习题0

[复制链接]
发表于 2021-7-14 16:36:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 zhengzaiaining 于 2021-7-14 16:38 编辑

0. 编写一个程序,接受用户的输入并保存为新的文件,程序实现如图:
214002l8mwwcb52f9f5q9f.png

我尝试编写了个程序,但是只能保存一行,如果换行就会结束运行,请问各位大佬是哪里代码出了问题,该如何修改呢?谢谢
name=input('请输入文件名:')
f=open(name,'x')
list1=list(input('请输入内容,单独输入:w保存退出'))
for each_line in list1:
    if each_line ==':w':
        f.close()
    else:
        f.writelines(each_line)
最佳答案
2021-7-14 16:50:21
改成这样:
name=input('请输入文件名:')
f=open(name,'w')
print('请输入内容,单独输入:w保存退出')
while True:
    content = input()
    if content ==':w':
        f.close()
        break
    else:
        f.writelines(content+"\n")

1.input只能输出一行

2.writelines不会自动换行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-14 16:36:42 | 显示全部楼层
代码贴出来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-14 16:50:21 | 显示全部楼层    本楼为最佳答案   
改成这样:
name=input('请输入文件名:')
f=open(name,'w')
print('请输入内容,单独输入:w保存退出')
while True:
    content = input()
    if content ==':w':
        f.close()
        break
    else:
        f.writelines(content+"\n")

1.input只能输出一行

2.writelines不会自动换行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-7-14 17:06:26 | 显示全部楼层
name=input('请输入文件名:')
f=open(name,'a+')
list1 = []
while True:
    list1.append(input('请输入内容,单独输入:w保存退出'))
    if list1[-1] == 'w':
        break
for i in list1:
    if i == 'w':
        continue
    else:
        f.write(i+'\n')
f.close()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-7-15 10:36:23 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-14 00:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表