当前位置:   article > 正文

Python高级篇(03):文件操作(写文件)_python 写文件

python 写文件

一、写文本文件

  1. 打开文件
  2. 写入内容
  3. 关闭文件

1、在写入内容时进行编码操作

以二进制模式打开文件,写入字符串内容一定要编码操作

  1. """
  2. 1. 打开文件
  3. 路径:t1.txt(w模式:文件存在清空再写,文件不存在创建再写)
  4. 模式:wb(w,写 write;b,二进制 binary)
  5. """
  6. file_object = open('t1.txt', mode='wb')
  7. # 2. 写入内容
  8. file_object.write("51自学".encode("utf-8"))
  9. # 3. 关闭文件
  10. file_object.close()
'
运行

2、在打开文件时传入编码格式

  1. """
  2. 1. 打开文件
  3. 路径:t1.txt
  4. 模式:wt(w,写 write;t,文件 text)
  5. """
  6. file_object = open('t1.txt', mode='wt', encoding='utf-8') # 写文件必须要加mode,如果不加encoding则写入内容是乱码
  7. # 2. 写入内容
  8. file_object.write("51自学")
  9. # 3. 关闭文件
  10. file_object.close()
'
运行

二、案例1:实现单用户注册

  1. # 实现:将用户注册内容写入到文本文件中
  2. username = input("请输入用户名:")
  3. password = input("请输入密码:")
  4. data = "{}-{}".format(username, password)
  5. file_object = open('files/info.txt', mode='wt', encoding='utf-8')
  6. file_object.write(data)
  7. file_object.close()

三、案例2:实现多用户注册

  1. # 如果使用w写入文件,会先清空文件,再向文件中写入内容
  2. # 解决办法:使用w写入文件不要反复打开文件
  3. file_object = open('files/info.txt', mode='wt', encoding='utf-8')
  4. while True:
  5. username = input("请输入用户名:")
  6. if username.upper() == "Q": # upper()函数将字符转为大写
  7. break
  8. password = input("请输入密码:")
  9. data = "{}-{}\n".format(username, password)
  10. file_object.write(data)
  11. """
  12. 放循环里面会报ValueError: I/O operation on closed file.
  13. 原因是:打开只操作一次,文件关闭放循环内部,文件关闭以后没执行打开就不能写入内容
  14. """
  15. file_object.close()

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/820437?site
推荐阅读
相关标签
  

闽ICP备14008679号