第十一章:文件操作
1.打开文件
用open函数,直接用就可以。
open(name[,mode[,buffering]])
调用open之后会返回一个文件对象,mode--模式,buffering--缓冲都是可以选择的。
>>f=open(r‘文件路径’)
2.文件模式:
‘r’ 读模式
‘w’ 写模式
‘a’ 追加模式
‘b’ 二进制模式(可以添加到其他模式中)
‘+’ 读/写模式(可以添加到其他模式中)
处理其他二进制文件时,要用’b’模式
3.缓冲:
如果参数是0(或者False),无缓冲,读写直接针对硬盘,如果是1,有缓冲,直接用内存代替硬盘。
读和写:
>>f=open(‘文件路径’,’w’)
>>f.write(‘hello’)
>>f.write(‘world’)
>>f.close()
>>f=open(‘文件路径’)
>>f.read(4)
输出:hell
>>f.read()
输出:oworld
首先读取了4之后,读取文件的指针就改变了,不再是从开始读。
注意在写操作完成后,要调用close()
4.读写行:
使用file.readline()读取一行,包括换行符,带参数的时候会读取这行的多少字节数。
使用file.readlines()可以读取整个文件的所有行,并作为列表返回。
5.上下文管理器
是一种支持__enter__和__exit__方法的对象,前者在进入with的语句时调用,返回值在as之后,后者带有三个参数,异常类型,异常对象,异常回溯。
6.基本的文件方法:
read(),readline(),readlines(),write()
Read():
>>f=open(‘文件路径’)
>>print(f.read())
Readline():
>>f=open(‘文件路径’)
>>for i in range(3):
>> print(f.readline())
会打印出前三行
Readlines():
>>import pprint
>>pprint.pprint(f.readlines())
Write():
>>f=open(‘文件路径’)
>>f.write(‘hello’)
Writelines():
>>f=open(‘文件路径’)
>>lines=f.readlines()
>>f.close()
>>f.open(‘文件路径’)
>>f=writelines(lines)
>>f.close()
7.对文件内容进行迭代
按字节处理:
>>f=open(‘文件路径’)
>>char=f.read(1)
>>while char:
>>print(char)
char=f.read(1)
>>f.close()
按行操作:
>>f=open(‘文件路径’)
>>while True:
>>line=f.readline()
if not line:break
print(line)
>>f.close()
读取所有内容:
>>f=open(‘文件路径’)
>>for line in f.readlines():
print(line)
>>f.close()
8.fileinput实现迭代
>>import fileinput
\ >>for line in fileinput.input(‘文件路径’):
print(line)
>>f.close()
9.文件迭代器
文件的对象是可以迭代的!!
>>f=open(‘文件路径’)
>>for line in f:
print(char)
>>f.close()
迭代文件,可以使用其他的迭代语句。
10.字符串列表
>>f=open(‘文件路径’,’w’)
>>f.write(‘1 line\n’)
>>f.write(‘2 line\n’)
>>f.write(‘3 line\n’)
>>f.close()
>>lines=list(open(‘文件路径’))
>>lines
输出:[‘1 line’,’2 line’,’3 line’]
>>first,second,third=open(‘文件路径’)
>>first
输出:1 line
>>second
输出:2 line
>>third
输出:2 line
<!--EndFragment-->
相关推荐
《从零开始学Python数据分析与挖掘》官方纠错 P57:代码中的注释有误,第二段代码的最后一个注释,需改成下方: # 第2至4行,2至5列 print(arr2[1:4,1:5])
从零开始学Python:循环结构.docx从零开始学Python:循环结构.docx从零开始学Python:循环结构.docx从零开始学Python:循环结构.docx从零开始学Python:循环结构.docx从零开始学Python:循环结构.docx从零开始学...
将自己的python学习经历共享上传 挺适合零基础的人员学习 从零开始学python
从零开始学Python:Python语言中的变量.docx从零开始学Python:Python语言中的变量.docx从零开始学Python:Python语言中的变量.docx从零开始学Python:Python语言中的变量.docx从零开始学Python:Python语言中的变量...
从零开始学Python:第一个Python程序.docx从零开始学Python:第一个Python程序.docx从零开始学Python:第一个Python程序.docx从零开始学Python:第一个Python程序.docx从零开始学Python:第一个Python程序.docx从零...
从零开始学Python数据分析与挖掘 从零开始学Python数据分析与挖掘
Python 是一种面向对象、解释型计算机程序设计语言,由 Guido van Rossum 于 1989 年底发明,第一个公开 发行版发行于 1991 年。Python 语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,能够把用其 他...
从零开始学python
从零开始学Python从零开始学Python
从零开始学Python教程配套代码,零开始学Python开发案例,爬取套图、操作数据库、爬取小说、爬取小说存入数据库、小说网站雏形、日志框架、微信监控、人脸识别、Django后台
将自己的python学习经历共享上传 挺适合零基础的人员学习 从零开始学python
从零开始学Python网络爬虫1
从零开始学Python程式设计(适用Python 3.5以上)畅销回馈版
从零开始学Python AI开发系列141
从零开始学Python AI开发系列121
从零开始学Python AI开发系列351
从零开始学Python AI开发系列431
从零开始学Python AI开发系列471