016--python文件处理
2024-09-30 04:47:08
一、操作文件流程
1.打开文件,得到文件句柄并赋值给一个变量
2.通过句柄对文件进行操作
3.关闭文件
示例代码:
f = open('chenli.txt') #打开文件 first_line = f.readline()
print('first line:',first_line) #读一行
print('我是分隔线'.center(50,'-'))
data = f.read()# 读取剩下的所有内容,文件大时不要用
print(data) #打印读取内容 f.close() #关闭文件
二、文件打开方式
打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。
打开文件的模式有:
- r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
- w,只写模式【不可读;不存在则创建;存在则清空内容】
- x, 只写模式【不可读;不存在则创建,存在则报错】
- a, 追加模式【可读;不存在则创建;存在则只追加内容】
"+" 表示可以同时读写某个文件
- r+, 读写【可读,可写】
- w+,写读【可读,可写】
- x+ ,写读【可读,可写】
- a+, 写读【可读,可写】
"b"表示以字节的方式操作
- rb 或 r+b
- wb 或 w+b
- xb 或 w+b
- ab 或 a+b
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码
seek()三种状态0、1、2 默认状态0,状态1 相对路径调整,末尾状态2。状态1和2都需要在字节情况下使用
三、读写命令
输入:
file.read()方法直接读取字节到字符串中,默认size参数为-1
file.readline()方法读取打开文件的一行,包括行结束符作为字符串返回,默认size参数为-1
file.readlines()方法读取文件所有行,并把它们作为一个字符串列表返回
输出:
file.write()把含有文本数据或二进制数据块的字符写到文件中去
file.writelines()接受一个字符串列表作为参数,将它们写入文件中,行结束符不会自动加入,所以如果需要的话,在调用writelines()前给每行结尾加上行结束符
补充:
r+ 默认光标在开始的位置,写的时候追加写
w+ 覆盖写,想读取内容通过seek()调整
a+ 光标默认在文件的最后位置,不管光标在什么位置,一定是追加写,读取内容通过seek()调整
最新文章
- PHP5.5.13 + Apache2.4.7安装配置流程详解
- Node.js——Async
- mysql linux终端登陆
- Java for LeetCode 034 Search for a Range
- (letcode)String to Integer (atoi)
- 解决vim不能使用方向键和退格键问题
- 第12届北师大校赛热身赛第二场 A.不和谐的长难句1
- 树形控件CTreeCtrl的使用
- Flink Program Guide (9) -- StateBackend : Fault Tolerance(Basic API Concepts -- For Java)
- 集合-字典(Dictionary)
- 浏览器播放rtsp流媒体解决方案
- 验证插件——jquery.validate.js
- iOS - Core Animation 核心动画
- 多线程总结之旅(1):线程VS进程
- k8s应用机密信息与配置管理(九)--技术流ken
- vim中制表符tabstop用法
- 使用mediainfo工具统计每个视频文件(媒体文件)播放时长
- 8.中断按键驱动程序之poll机制(详解)
- python之文件目录操作
- Oracle 相关概念
热门文章
- BUPT复试专题—众数(2014)
- SolidEdge 如何由装配图快速进行标注和零件序号编写 制作BOM表
- LeetCode——Remove Nth Node From End of List
- HDU 2018 母牛的故事 [补]
- sql insert and update
- GPG key
- Understanding When to use RabbitMQ or Apache Kafka Kafka RabbitMQ 性能对比
- spark mongo 性能优化
- 设置Android Studio工程布局文件的默认布局
- [TJOI2017] 不勤劳的图书管理员