鱼C论坛

 找回密码
 立即注册
查看: 3469|回复: 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)
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-11-10 16:49:41 | 显示全部楼层
我在我的机器上,按第一个程序做,可以保存。
小甲鱼最新课程 -> https://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行代码就可以了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

  12. file_name = input('请输入文件名:')
  13. file_write(file_name)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-29 10:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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