Python的文件操作

最近看的关于Python的文件操作,整理下与大家分享,还请多多指正

a、通过open打开文件

fil = open('pic.py') -- 打开名称为pic.py的文件,通过open返回一个file对象,通过迭代器可以访问该对象,将内容按照每一行打印出来
f1 = open('new.txt')
for k in f1:
print(k)
fil.read() -- 读取文件的内容
fil.close() -- 关闭文件
b、通过file文件来读取
fil = file("pic.py"); --- 通过file来打开文件
print fil.read() --- 读取文件的内容
fil.close() --- 关闭文件流
print(fil) --- <open file 'pic.py', mode 'r' at 0x024BCA70>
c、向文件中写入内容(在文件打开的时候需要指定模式)
r:读模式 r+:读写模式 (fil1 = file("new.txt","r+"),会将写入的内容写入文件,不会清空源文件的内容
w:先将文件清空并写入(fil1 = file("new.txt","w"),只有在调用close之后才会将数据写入文件
a:可以将写入的内容追加到文件的末尾
fil1 = file("new.txt","r+")
fil1.write("hi") --- 向文件里写入字符串
print fil1.read()
c、readlin() / readline(size) 每次读取一行,或者读取一行的size个元素,如果超出文件范围以后还会返回空字符串
f1 = open('new.txt')
print(f1.readline())
d、readlines() 读取每一行的数据并返回一个列表
f1 = open('new.txt')
print(f1.readlines())
e、next,当超出文件范围后将会停止,每次只是读取一行数据,当读取到的文件末尾后将会抛出异常
f1 = open('new.txt')
print(f1.next())
f、writelines(list),将一个列表写入文件,可以通过模式a来控制,使得内容写入文件末尾
f1 = open('new.txt','a')
f1.writelines(['1\n','30\n','69\n'])
f1.close()
g、seek(偏移量,选项),可以通过seek来移动指针
选项:
0:表示将指针指向文件的头部 2:表示将指针指向文件的尾部
1:将指针向前或者向后移(使用正负数来控制)
偏移量:
正数:向右偏移 负数:向左偏移 0:表示不偏移
g、flush(),提交更新,将需要写入的数据写入文件
***关于文件的打开模式***
r:只读  r+:读写模式(不会再文件追加,会在文件的开头写入内容)
w:写入,先删除源文件,在重新写入,如果文件不存在则创建文件  
w+:读写,先删除文件,在重新写入,如果文件不存在则创建文件(可写入,可输出)
a:写入,在文件末尾追加新的内容,文件不存在则创建
a+:读写,在文件末尾追加新的内容,文件不存在则创建
b:打开二进制文件,可以与r、w、a、+结合使用
posted @ 2018-03-31 13:49  麻辣Sunny  阅读(172)  评论(0编辑  收藏  举报