鱼C论坛

 找回密码
 立即注册
查看: 3068|回复: 3

python 29课 动手做0

[复制链接]
发表于 2020-11-10 16:42:20 | 显示全部楼层 |阅读模式

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

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

x
def file_write(file_name):
    f = open(file_name, 'w')
    print('请输入内容【单独输入\':w\'保存退出】:')

    while True:
        write_some = input()
        if write_some != ':w':
            f.write('%s\n' % write_some)
        else:
            break

    f.close()

file_name = input('请输入文件名:')
file_write(file_name)

试了半天并不能保存输入的内容,【单独输入\':w\'保存退出】,这个操作如何才能执行呀
然后我改成这个样子就能保存,请问这样书写是也正确

def file_write(file_name):
    f = open(file_name, 'w')
    print('请输入内容【单独输入\':w\'保存退出】:')

    while True:
        write_some = input()
        if write_some != ':w':
            f.write('%s\n' % write_some)
            f.close()】
        else:
            break

   

file_name = input('请输入文件名:')
file_write(file_name)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-11-10 16:49:41 | 显示全部楼层
我在我的机器上,按第一个程序做,可以保存。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-10 16:58:07 | 显示全部楼层
write() 方法用于向文件中写入指定字符串。

在文件关闭前或缓冲区刷新前,字符串内容存储在缓冲区中,这时你在文件中是看不到写入的内容的。
=========所以你是不是说反了???============
写入文件要这样操作:
1、open()方法打开文件
2、write()方法写入字符串
3、close()方法关闭         
而你发的代码,第1种是打开文件,再持续写入,最后关闭,理论上是没问题的
第2种是错误的,打开文件,写入,关闭,再循环写入??你都关闭了往哪去写?
另外推荐你掌握更好的方法
with open(file_name,'w') as file:
    f.write('str')   #'str'表示欲写入的字符串,就2行代码就行了,会自动调用close()方法,不需要手动调用

你只要循环把用户输入的字符串比对,不等于保存命令,就继续添加字符串,是保存命令则跳出循环,再执行这2行代码就可以了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-11-10 17:04:07 | 显示全部楼层
参考代码:
def file_write(file_name):
    print('请输入内容【单独输入\':w\'保存退出】:')
    write_some = ''
    while True:
        temp = input()
        if temp == ':w':
            break
        else:
            write_some += temp+'\n'
    with open(file_name,'w') as f:
        f.write(write_some)

file_name = input('请输入文件名:')
file_write(file_name)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-17 21:52

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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