Python怎么读写文本文件
Python如何读写文本文件?
1. 读取文本文件
代码:
f = open('test.txt', 'r') print f.read() f.seek(0) print f.read(14) f.seek(0) print f.readline() print f.readline() f.seek(0) print f.readlines() f.seek(0) for line in f: print line, f.close()
运行结果:
root@he-desktop:~/python/example# python read_txt.py
第一行
第二行
第三行
第一行
第
第一行
第二行
['\xe7\xac\xac\xe4\xb8\x80\xe8\xa1\x8c\n', '\xe7\xac\xac\xe4\xba\x8c\xe8\xa1\x8c\n', '\xe7\xac\xac\xe4\xb8\x89\xe8\xa1\x8c\n']
第一行
第二行
第三行
open的第二个参数:
- r,读取模式
- w,写入模式
- a,追加模式
- r+,读写模式
read()表示读取到文件尾,size表示读取大小。
seek(0)表示跳到文件开始位置。
readline()逐行读取文本文件。
readlines()读取所有行到列表中,通过for循环可以读出数据。
close()关闭文件。
2. 写入文本文件
代码:
f = open('test.txt', 'r+') f.truncate() f.write('0123456789abcd') f.seek(3) print f.read(1) print f.read(2) print f.tell() f.seek(3, 1) print f.read(1) f.seek(-3, 2) print f.read(1) f.close()
运行结果:
root@he-desktop:~/python/example# python write_txt.py
3
45
6
9
b
truncate()表示清空文件
write()写入文本
seek(3)定位到第4个元素前,0表示文件开始,也就是第1个元素前。
seek(3, 1)第二个参数默认是0,表示从文件开始处读取;1表示从当前位置开始计数;2表示从文件最后开始。
read(1)读取一个字节,指针会根据读取的大小移动相应的位置。
tell()取得当前指针的位置。
3. 读取文件信息
# coding: utf-8 f = open('test.txt') print '文件名:', f.name print '是否处于关闭状态:', f.closed print '打开的模式:', f.mode
运行结果:
root@he-desktop:~/python/example# python read_info.py
文件名: test.txt
是否处于关闭状态: False
打开的模式: r