文件对象的方法 |
|
---|---|
fp.readline() |
|
fp.readlines() |
|
注意事项:
- readline()和readlines(),都是从当前位置进行读取;python中在处理文件时,文件对象使用距离文件开始处的偏移量(以字节为单位)维护文件中的当前位置。当然以 ‘r’ 或 ‘w’模式打开时,初始位置是0;
- 如果不是0,则前面的数据不能够获取到了,比如偏移量位于某行中间,readline()能够获取改行后面的内容,获取不到改行前面的内容;readlines()返回的列表,第一个元素值同readline()一个道理,后面元素照常。
- 每一行文本后面有换行符,则readline()返回的字符串和readlines()返回的列表元素会带上’\n’换行符,就换行符这点举个列子:
-
我的文本文件(sample.txt)内容:
-
执行下面的代码(sample.py):
fp = open('D:/sample.txt', 'r', encoding='utf-8')
lst = fp.readlines()
print(lst)
fp.close()
- open函数的第一个参数是,文本文件的路径(注意是斜线),如果文本文件sample.txt和sample.py在同一路径下,第一个参数为文件名称就可
- open函数的第二个参数是,确认对文件的访问权限,默认权限 ‘r’ 是只读,此处可省略,也可换作mode=‘r’(关键字参数方式);打开文件时,偏移量在文本文件首部
- ‘a’: 文本文件尾部追加内容,打开文件时,偏移量在文本文件尾部
- ‘w’: 文本文件进行写操作,会覆盖当前文件的内容;如果文件不存在,则新建;打开文件时,偏移量在文本文件首部
- encoding参数:编码或解码方式
- 结果:
- 以列表的方式查看元素值,更加直观
- 如果sample.txt内容中,第二行后面没有换行符,则结果为:[‘米兰的小铁匠\n’, ‘搁浅’]