python基础学习8----文件基本操作
一.文件的打开,open函数
f = open(file_name,mode)#创建文件对象
打开模式有很多种
1. 'r': 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
2. 'r+': 打开一个文件用于读写。文件指针将会放在文件的开头,但写入内容会写到文件内容末尾。
3. 'w': 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
4. 'w+': 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
5. 'a': 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
6. 'a+': 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。读文件时从文件内容的末尾读,因为文件指针放在文件的结尾。
with open as语句
不必写f.close(),会自动在末尾关闭文件,即使在文件操作中发生错误
with open('/path/to/file', 'r') as f:
print(f.read())
二.文件对象的属性
file.closed : 如果文件已被关闭返回true,否则返回false。
file.mode : 返回被打开文件的访问模式。
file.name : 返回文件的名称。
三.文件的关闭
file_object.close()
四.文件的读写操作
write方法
file_object.write(string)
read方法
file_object.read(count)#count为字节数,不填则读到文件末尾
readlines方法用于读取所有行
file_object.readlines( )
#文件内容如下
#12345
#67890
#09876
#54321
p=f.readlines()
print(p)
#输出为['12345\n', '67890\n', '09876\n', '54321']
五.文件的定位
tell方法
print(file_object.tell())#输出文件内的当前位置, 即下一次的读写会发生在文件开头多少字节之后。
#根据编码的不同,每个汉字所占的字节也不同,utf-8中一个汉字占3个字节,此处的数量和read函数的参数意义不同,read函数参数中1代表一个字符
#例如以下为文件内容
#这是汉字 print(file_object.read(3))#输出为这是汉
seek方法
seek(offset ,from)方法改变当前文件的位置。offset变量表示要移动的字节数。from变量指定开始移动字节的参考位置。
如果from被设为0,这意味着将文件的开头作为移动字节的参考位置。如果设为1,则使用当前的位置作为参考位置。如果它被设为2,那么该文件的末尾将作为参考位置。
file_object.seek(3)#from参数默认为0
六.截断文件
truncate() 方法用于截断文件,如果指定了可选参数 size,则表示截断文件为 size 个字节。 如果没有指定 size,则从当前位置起截断;截断之后 size 后面的所有字符被删除。
file_object.truncate(size)
七.flush方法
flush() 方法是用来刷新缓冲区的,即将缓冲区中的数据立刻写入文件,同时清空缓冲区,不需要是被动的等待输出缓冲区写入。
一般情况下,文件关闭后会自动刷新缓冲区,但有时你需要在关闭前刷新它,这时就可以使用 flush() 方法。
file_object.flush()
未完待续
python基础学习8----文件基本操作的更多相关文章
- python基础学习Day8 文件的基本操作
1.文件的基本操作初识 f = open('a.text', 'r', encoding='utf-8')data = f.read()print(data)f.close() 2.读 r r+b ...
- python基础学习之文件操作&函数
1.文件处理相关 1.编码问题 ①python2与python3中的默认编码: py2默认使用ASCII码,py3默认使用utf-8 ②为什么会出现中文乱码,中文乱码的情况有哪些? #sys.stdo ...
- Python基础学习之文件(2)
文件内建方法 1.输入 read()方法用来直接读取字节到字符串中,最多读取给定数目个字节.如果没有给定size参数(默认值为-1)或size值为负,文件将被读取直至末尾. readline()方法读 ...
- python基础学习笔记——文件操作
文件操作 初始文件操作 使用Python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了 根据打开方式的不同能够执行的操作 ...
- python基础学习之文件的基础操作方法
打开文件方法 open('xx') 注意,open后括号内加的是文件名,这里默认是当前文件的相对路径,如果不在当前文件层,需要绝对路径,默认打开方法是读取,即read,默认的解码器为当前系统的解码器w ...
- Python基础学习四 文件操作(二)
####读取文件#### with open('goods_info.txt', 'r', encoding='utf-8') as f: f.seek(0) # 注意指针位置 goods_info ...
- Python基础学习三 文件操作(一)
文件读写 r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[不可读: 不存在则创建:存在则只追加内容:] r+,[可读.可写:可追加,如果打开的文件不存 ...
- Python基础学习之文件(1)
1.文件对象 文件对象不仅可以用来访问普通的磁盘文件,还可以访问具有文件类型接口的其他对象;文件只是连续的字节序列. 2.文件内建函数(open()) 内建函数open()是打开文件的"钥匙 ...
- python学习9—文件基本操作与高级操作
python学习9—文件基本操作与高级操作 1. 文件基本操作 打开文件,获得文件句柄:f = open('filename',encoding='utf-8'),open会查询操作系统的编码方式,并 ...
随机推荐
- SpringBoot入门 (十三) WebSocket使用
本文记录在SpringBoot中使用WebSocket. 一 什么是WebSocket WebSocket是基于TCP协议的一种网络协议,它实现了浏览器与服务器全双工通信,支持客户端和服务端之间相互发 ...
- Go基础知识
编程基础 Go程序是通过package来组织的(与Python类似) 只有package名称为main的包可以包含main函数 一个可执行程序有且仅有一个main包 一般结构basic_structu ...
- SpringMVC Controller介绍及常见注解
一.简介 在SpringMVC中,控制器Controller负责处理由DispatcherServlet分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model,然后再把该Model返 ...
- Linux中用HttpWebRequest或WebClient访问远程https路径
要想在Linux中用HttpWebRequest或WebClient访问远程https路径,需要作如下处理: 1,更新linux根证书(只需一次,在安装mono或安装jexus独立版后执行) sudo ...
- RESTful API入门
RESTful是一种设计风格,并不是一种标准. 简短的去概括的话,就是:1.URL 定位资源 资源,就是数据.比如newsfeed,friends,order等 2.用 HTTP 动词描述操作. ...
- <tbody>标签的用途
如果一个表格是 分 好几个部分 ,那么每个部分 使用一组<tbody>这样,下载完第一个部分 就可以先显示了,不用等后面的部分是否下载好,这是写给浏览器看的.
- 撩课-Web大前端每天5道面试题-Day31
1.web storage和cookie的区别? Web Storage的概念和cookie相似, 区别是它是为了更大容量存储设计的. Cookie的大小是受限的, 并且每次你请求一个新的页面的时候C ...
- 0 or 1(hdu2608)数学题
0 or 1 Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...
- Hashmat the brave warrior(UVa10055)简单题
Problem A Hashmat the brave warrior Input: standard input Output: standard output Hashmat is a brave ...
- Java - "JUC线程池" 架构
Java多线程系列--“JUC线程池”01之 线程池架构 概要 前面分别介绍了"Java多线程基础"."JUC原子类"和"JUC锁".本章介 ...