Python文件IO
文件IO:主要是指常见的文件操作,比如读写文件,复制文件等。
本文主要介绍Python中的文件操作,涉及到读取txt,写入txt,文件复制,文件重命名,删除文件,删除文件夹,读写二进制文件等
1、文件打开
常用方法是os模块的open方法,具体参数请参考资料http://www.runoob.com/python/python-files-io.html
eg: f=open(filename,'r',encoding='UTF-8');
参数1:文件名
参数2:文件打开方式
参数3:以什么编码打开(常用于文本文件)
2、读取文件
常用方法是os模块的read()方法,如果是文件文件,还有readline()和readlines
需要强调的是read()方法读取的字符串,包括文本文件和二进制文件,一般
用于非文本文件的读取,比如图片文件,视频文件
str=f.readlines(); 一次读取所有行
str=f.readline(); 一次读取一行数据
str=f.read(100); --尝试读取100个字节的数据,二进制文件,如果参数为空,
会一次性读取文件,若文件体积太大,建议分次读取,加参数。
3、复制文件
本文仅介绍一种方法,shutil模块中的copyfile方法
eg: shutil.copyfile('F:\\test\\a.txt','F:\\test\\a2.txt')
4、文件重命名 重命名前文件不能在使用中 eg: os.rename('F:\\test\\a.txt','F:\\test\\a1.txt'); 5、删除文件和删除文件夹 删除文件 os.remove('F:\\test\\a.txt'); 删除文件夹 os.removedirs('F:\\test2'); 文件夹必须是空文件夹,否则会抛出异常 6、创建文件夹 os.makedirs('F:\\test2'); 7、复制二进制文件 import os; import shutil; # 判断文件是否存在 def fileExists(filename): if os.path.exists(filename): return True else: return False;
--删除文件
def deletefile(filename):
if (fileExists(filename)):
os.remove(filename);
return True;
else:
return False;
--复制文件
def copyfile(sourcefilename,destfilename):
if fileExists(destfilename):
deletefile(destfilename);
fsource = open(sourcefilename,'rb');
dsource=open(destfilename,'wb');
str=fsource.read();
dsource.write(str);
fsource.close();
dsource.close();
copyfile('F:\\test\\01.jpg','F:\\test\\02.jpg');