一、打开文件

f=open('test.txt','r')

f.close()

此方法,文件使用结束后,用户必须关闭,因为文件对象会占用操作系统的资源。

with open('test.txt','r') as f:

print(f.read)

此方法,引入了with语句来自动调用close()方法。

'r':读

'w':写

'a':追加

'r+' == r+w(可读可写,文件若不存在就报错(IOError))

'w+' == w+r(可读可写,文件若不存在就创建)

'a+' ==a+r(可追加可写,文件若不存在就创建)

二进制文件:

'rb'  'wb'  'ab'  'rb+'  'wb+'  'ab+'

二、读文件

with open('test.txt','r') as f:

content=f.read()read(): 每次读取整个文件,包括结束符,以字符串的格式返回。如果文件大于可用内存,为了保险起见,可以反复调用read(size)方法,每次最多读取size个字节的内容。

with open('test.txt','r') as f:

line= f.readline()

if line:

print(line)readline() 每次只读取一行,包括结束符,返回的是一个字符串对象。通常比readlines() 慢得多。仅当没有足够内存可以一次读取整个文件时,才应该使用 readline()。

with open('test.txt','r') as f:

content=f.readlines()readlines(): 一次性读取整个文件,包括结束符,以列表的格式返回。配合 for ... in ... 进行处理。

注意:三种方法把每行末尾的\n也读进去了,需要手动删除

with open('test.txt') as f:

content= f.readlines()

for I in range(len(content)) :

content[I]=content[I].rstrip('\n')

################################

with open('test.txt') as f:

arr=[]

for lines in f.readlines():

lines=lines.replace("\n","").split(",")

arr.append(lines)

三、写文件

with open('test.txt','w') as f:

f.write('Hi!')write(): 和read、readline、对应,将字符串写入。

with open('test.txt','w') as f:

f.writelines(["1\n", "2\n", "3\n"])writelines(): 和readlines对应,将字符串列表写入,不会自动加入换行符,所以需要手动加入。

四、文件夹操作

1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()

2.返回指定目录下的所有文件和目录名:os.listdir()

3.函数用来删除一个文件:os.remove()

4.删除多个目录:os.removedirs(r"c:\python")

5.检验给出的路径是否是一个文件:os.path.isfile()

6.检验给出的路径是否是一个目录:os.path.isdir()

7.判断是否是绝对路径:os.path.isabs()

8.检验给出的路径是否真地存:os.path.exists()

9.返回一个路径的目录名和文件名:os.path.split()

例子:

os.path.split('/home/swaroop/byte/code/poem.txt') 结果:('/home/swaroop/byte/code', 'poem.txt')

10.分离扩展名:os.path.splitext()

11.获取路径名:os.path.dirname()

12.获取文件名:os.path.basename()

13.运行shell命令: os.system()

14.读取和设置环境变量:os.getenv() 与os.putenv()

15.给出当前平台使用的行终止符:os.linesep Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'

16.指示你正在使用的平台:os.name 对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'

17.重命名:os.rename(old, new)

18.创建多级目录:os.makedirs(r"c:\python\test")

19.创建单个目录:os.mkdir("test")

20.获取文件属性:os.stat(file)

21.修改文件权限与时间戳:os.chmod(file)

22.终止当前进程:os.exit()

23.获取文件大小:os.path.getsize(filename)

五、目录操作

1.创建目录

os.mkdir("file")

2.复制文件:

shutil.copyfile("oldfile","newfile") #oldfile和newfile都只能是文件

shutil.copy("oldfile","newfile") #oldfile只能是文件夹,newfile可以是文件,也可以是目标目录

3.复制文件夹:

4.shutil.copytree("olddir","newdir") #olddir和newdir都只能是目录,且newdir必须不存在

5.重命名文件(目录)

os.rename("oldname","newname") #文件或目录都是使用这条命令

6.移动文件(目录)

shutil.move("oldpos","newpos")

7.删除文件

os.remove("file")

8.删除目录

os.rmdir("dir") #只能删除空目录

shutil.rmtree("dir") #空目录、有内容的目录都可以删

9.转换目录

os.chdir("path") #换路径