波-

python之路(五)-文件操作

文件操作无非两个,即:读、写

python 2.x:

文件句柄 = file('文件路径', '模式')

python3.x:

文件句柄 = open('文件路径', '模式')

打开文件的模式有:

  • r,只读模式(默认)。
  • w,只写模式。【不可读;不存在则创建;存在则删除内容;】
  • a,追加模式。【可读;   不存在则创建;存在则只追加内容;】

"+" 表示可以同时读写某个文件

  • r+,可读写文件。【可读;可写;可追加】
  • w+,写读,会把源文件清空,慎用
  • a+,同a

"U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)

  • rU
  • r+U

"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)

  • rb
  • wb
  • ab

 

常用方法:

read

# 一次性加载所有内容到内存
obj.read()

 

write

 

f = open('log.txt','w',encoding='utf8')
f.write('hell,kitty1')
f.flush()
f.close()

 

readline 每次仅读一行

f = open('log.txt','r',encoding='utf8')
print(f.readline())
print(f.readline())

#输出结果:
你好hello,world

hello

 

 

readlines 

# 一次性加载所有内容到内存,并根据行分割成字符串并组成一个列表
obj.readlines()

f = open('log.txt','r',encoding='utf8')
print(f.readlines())
#输出结果:
['你好hello,world\n', 'hello']
 

 

 

seek 移动指针位置,按照字节来移动

tell 读取指针位置

f = open('log.txt','r',encoding='utf8')
f.seek(3)
print(f.tell())

#输出结果
3

 

close 关闭句柄

f = open('log.txt','r',encoding='utf8')
print(f.read(2))
f.close()

 

with open(文件名,打开方式) as xxx

此方法的好处是不需要再单独关闭句柄。

 

posted on 2016-01-18 21:42  波-  阅读(197)  评论(0编辑  收藏  举报

导航