第六章 python读写文件操作

和字符串的处理相关的是文件操作,把处理好的字符串写到文件里,这就涉及到字符串的操作。在python中文件的操作和c/c++语言类似,打开文件,把字符串写入到文件中。

open/文件操作

f=open('/tmp/hello','w')
#open(路径+文件名,读写模式)

#读写模式:r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件.常用模式

如:'rb','wb','r+b'等等

读写模式的类型有:

rU 或 Ua 以读方式打开, 同时提供通用换行符支持 (PEP 278)
w     以写方式打开,
a     以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+     以读写模式打开
w+     以读写模式打开 (参见 w )
a+     以读写模式打开 (参见 a )
rb     以二进制读模式打开
wb     以二进制写模式打开 (参见 w )
ab     以二进制追加模式打开 (参见 a )
rb+    以二进制读写模式打开 (参见 r+ )
wb+    以二进制读写模式打开 (参见 w+ )
ab+    以二进制读写模式打开 (参见 a+ )

读文件

读固定字节

file_object = open('abinfile', 'rb')
chunk = file_object.read(100)

读每行

file_object.readline()
list_of_all_the_lines = file_object.readlines( )

如下读取D:\python-start下的helloworld.py,并把读取的字符显示出来:

常见的参考代码如下:

#!/usr/bin/python  
#coding=utf-8  
import os  

if os.path.exists("clusters3.txt"):  
    file = open("clusters3.txt")  
    while 1:  
        line = file.readline()  
        print line  
        if not line:  
            break  
  file.close()

如果使用with 简化文件的打开和关闭操作:

#!/usr/bin/python  
#coding=utf-8  
import os  

if os.path.exists("clusters3.txt"):  
    with open("clusters3.txt") as file:  
        while 1:  
            line = file.readline()  
            if not line:  
                break  
            print line

写文件

写数据

file_object = open('thefile.txt', 'w')
file_object.write(all_the_text)
file_object.close( )

写入多行

file_object.writelines(list_of_text_strings)

注意,调用writelines写入多行在性能上会比使用write一次性写入要高。

把变量s的值写到文件file_test.txt下:

写文件的参考代码如下:

#!/usr/bin/python  
#coding=utf-8  

with open('test.txt', 'w') as file:  
    file.write('test ')  
    file.write('test1 ')  
    file.writelines(['test','test1'])
继续阅读

所有评论

写了这么多年博客,收到的优秀评论少之又少。在这个属于 SNS 的时代也并不缺少向作者反馈的渠道。

还没有评论

撰写评论