python编程实例之python文件操作

发布时间:2021-01-24编辑:脚本学堂
本文介绍了python文件操作的相关方法,python编程实例之python文件操作实例教程,感兴趣的朋友参考下。

1. python常用文件操作有open,write,read,readline,readlines,writelines,seek,tell,close等。

open的函数原型为open(name[,mode[,buffering]]),name为文件的路径名,常见的mode有’r’ (读模式),’w’ (写模式),’a’追加模式,’b’ ( 二进制模式) ‘+’(可读可写模式),buffering的值设为0,文件的操作是没有缓冲的,如果为1,表示有缓冲,读写在内存中进行然后从缓冲区写入硬盘,读写效率更高。

readline为读取一行,readlines为读取所有行,writelines向文件写入需要加上换行符。
在文件读写完成后,需要调用close函数将文件关闭。

例子,文件读写操作:有文件D:so.txt,文件内容是:
 

Life is too short to wake up in themorning with regrets.
So,
love the people who treat you rightand forget about the ones who do not.

读文本:
 

复制代码 代码示例:
#!/usr/bin/env python 
f=open('D:so.txt','r+') 
#f.write("hello world") 
for i in range(0,3): 
    printf.readline() 
f.seek(0) 
lines=f.readlines() 
lines.append("nlife is too short,weneed python") 
f.seek(0) 
f.writelines(lines) 
f.close() 
for line in open('D:so.txt','r+'): 
    printline 

在文件的迭代读取时,可以不适用变量变量存储文件对象,在文件读写结束时也不必适用close关闭文件对象。

使用with语句,也可以不调用close,因为这种情况下,文件会自动关闭。如
 

复制代码 代码示例:
with open(“D:so.txt”) as file:
printfile.readlines()

2. python 提供了shutil模块,它提供了高级文件操作,如文件的复制、移动和备份

(1)   copyfile(src,dst)函数可以将文件src复制到dst,src和dst都是字符串形式的路径名,如果src和dst是相同的路径,则会引发错误,如果dst不是可写的方式打开的,会引发I/O异常,这个函数不能用于拷贝块设备文件或者管道文件。将上文中的so.txt拷贝到D:sotest.txt,只需调用copyfile(“D:so.txt”,”D:sotest.txt”)即可。

(2)   移动文件可以使用move(src,dst),这里如果dst是目录,src文件会移动到dst目录下。使用move(“D:so.txt”,”E:”),可以将so.txt移动到E盘。

(3)   备份文件
make_archive(base_name,format[,root_dir])
base_name 是将要创建的文件名(去掉扩展名),format是备份的格式,可以是zip,tar,batar,gztar,root_dir是要备份的文件,默认是当前的工作目录将D:sotest备份为myarchive,调用方法为make_archive(“myarchive”,zip,”D:sotest”)。