day 8:open文件和with的使用
2024-08-26 03:38:27
本节内容:
1,open打开文件后的几种操作
2,with和open的连用
3,flush的使用
1:open
1)r权限
f = open("D:\\auto\project\\fullstack\week2\day8\小重山.txt", "r", encoding="utf-8")
data = f.read()
# read(5):只读五个字,中英文相同,一个字母一个字,一个汉字一个字,此时光标在第五个字,再次运行,读取的数据是从第五个字往后读取
print(data)
2)w权限
f = open("D:\\auto\project\\fullstack\week2\day8\小重山.txt", "w", encoding="utf-8") # 写的方式打开,会将原来的文件内容清除
f.write("hello world")
f.close()
3)a权限
f = open("小重山", "a", encoding="utf-8") # 在文件的末尾添加,文件不可读
f.write("\nhello yuefei \n")
f.close() # 关闭打开的文本
4)r+,a+,w+的区别
# ----- r+的用法 ----
f = open("小重山", "r+", encoding="utf-8")
print(f.readline()) # 必须有read的动作才能够添加 ,不然不能添加成功
f.write("你好") # 写在最后
f.seek(0)
for i in f:
print(i.strip()) # 去除前后空格
f.close()
# -------------- w+的用法--------------
f = open("小重山1", "w+", encoding="utf-8")
f.write("你好")
print(f.tell()) # 获取当前光标所在位置,字节位置
f.seek(0) # 光标移动到开始
for i in f:
print(i.strip())
f.close()
a+和w+的用法相同,只是在打开文件的时候不清空
2,with和open的连用
with open("小重山", "r", encoding="utf-8") as f, open("新小重山", "w+", encoding="utf-8") as f2:
# with的使用可以在结束的时候自动关闭文件,不需要在运行的最后加上close
number = 1
for i in f:
if number == 6:
i = ''.join((i.strip(), "alex"))
f2.write(''.join((i.strip(), "\r")))
number += 1
f2.seek(0)
for new in f2:
# 使用的时候迭代器的方式,不容易导致内存被过多的占用
print(new.strip())
3,flush的使用,实现进度条的功能
import sys, time
for i in range(100):
sys.stdout.write("*")
sys.stdout.flush() # 将写的文本存入硬盘当中
time.sleep(0.2)
最新文章
- Disruptor-NET和内存栅栏
- dock停靠管理器
- 利用Cydia Substrate进行Android HOOK(二)
- HDU5763 another meaning -(KMP+DP)
- CSS如何实现数字分页效果
- PHP内置的Web Server的使用
- jquery file upload 后台收到的文件名中文乱码, filename中文乱码
- Java 设计模式 -- 示例指南
- dp
- 纯Socket(BIO)长链接编程的常见的坑和填坑套路
- Dynamics 365 Online 试用账号申请方式
- [个人网站搭建]·Django增加评论功能(Python3)
- [Swift]LeetCode838. 推多米诺 | Push Dominoes
- varnish 相关说明
- Requests爬虫
- windows c语言 网络
- Mybatis的Mapper接口方法不能重载
- 从客户端(ASPxFormLayout1$txtRule=";<;YYYY>;<;MM>;<;DD>;<;XXXX>;";)中检测到有潜在危险的 Request.Form 值
- linux-*.filetype.bz2 unzip
- Python - Django - ORM 实例(二)