szs 发表于 2017-4-29 14:46:10

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
页: [1]
查看完整版本: Python如何读写文本文件?