Python基础学习之文件(2)
文件内建方法
1、输入
read()方法用来直接读取字节到字符串中,最多读取给定数目个字节。如果没有给定size参数(默认值为-1)或size值为负,文件将被读取直至末尾。
readline()方法读取打开文件的一行(读取下个行结束符之前的所有字节)
readlines()它会读取所有(剩余的)行然后把它们作为一个字符串列表返回。
’K:\\\PycharmProjects\\JerryZhi\\S14-day2\\zhi‘文件内容:
第一篇 待人的基本技巧 第二篇 使人喜欢你的六种方法 第三篇 得人同意于你的十二种方法 第四篇 使人同意你的九种方法 第五篇 创造奇迹的信件 第六篇 使你的家庭和睦的七种方法
read()方法练习:
1 >>> fp=open('K:\\\PycharmProjects\\JerryZhi\\S14-day2\\zhi','r',encoding='utf-8')
2 >>> print(fp.read(1))
3 第
4 >>> print(fp.read(2))
5 一篇
6 >>> print(fp.read(10))
7 待人的基本技巧
8 第
9 >>> print(fp.read(11))
10 二篇 使人喜欢你的六种
11 >>> print(fp.read())
12 方法
13 第三篇 得人同意于你的十二种方法
14 第四篇 使人同意你的九种方法
15 第五篇 创造奇迹的信件
16 第六篇 使你的家庭和睦的七种方法
readline()方法练习:
>>> fp=open('K:\\\PycharmProjects\\JerryZhi\\S14-day2\\zhi','r',encoding='utf-8')
>>> print(fp.readline())
第一篇 待人的基本技巧
>>> print(fp.readline())
第二篇 使人喜欢你的六种方法
>>> print(fp.readline())
第三篇 得人同意于你的十二种方法
readlines()方法练习:
1 >>> fp=open('K:\\\PycharmProjects\\JerryZhi\\S14-day2\\zhi','r',encoding='utf-8')
2 >>> print(fp.readlines())
3 ['第一篇\u3000待人的基本技巧\n', '第二篇\u3000使人喜欢你的六种方法\n', '第三篇\u3000得人同意于你的十二种方法\n', '第四篇\u3000使人同意你的九种方法\n', '第五篇\u3000创造奇迹的信件\n', '第六篇\u3000使你的家庭和睦的七种方法']
2、输出
write()方法功能与read()相反,它把含有文本数据或二进制数据块的字符串写入到文件中;
当使用输入方法如read()从文件中读取行时,Python并不会删除行结束符,这个操作被留给了程序员。
类似地,输出方法write()也不会自动加入行线束符。你应该在文件写入数据前自己完成。
>>> fp=open('K:\\\PycharmProjects\\JerryZhi\\S14-day2\\zhi','r',encoding='utf-8') >>> for i in fp:print(i.strip()) 第一篇 待人的基本技巧 第二篇 使人喜欢你的六种方法 第三篇 得人同意于你的十二种方法 第四篇 使人同意你的九种方法 第五篇 创造奇迹的信件 第六篇 使你的家庭和睦的七种方法 >>> fp=open('K:\\\PycharmProjects\\JerryZhi\\S14-day2\\zhi','r',encoding='utf-8') >>> for i in fp:print(i) 第一篇 待人的基本技巧 第二篇 使人喜欢你的六种方法 第三篇 得人同意于你的十二种方法 第四篇 使人同意你的九种方法 第五篇 创造奇迹的信件 第六篇 使你的家庭和睦的七种方法
3、文件内移动
seek()方法可以在文件中移动文件指针到不同的位置。offset字节代表相对于某个位置偏移量。位置的默认值为0代表从文件开头算起,1代表从当前位置算起,2代表从文件末尾算起。
4、文件迭代
一行一行访问文件很简单:
for eachline in f :
在这个循环里eachline代表文本文件的一行(包括末尾的行结束符);