1.文件的操作
在操作文件文件(创建、删除)过程中需要引入python的os
1.得到当前工作的目录
1 2 3
| import os curdir = os.getcwd() print(curdir) # D:\python\program
|
2.得到当前目录的文件(目录)名称
1 2 3
| import os curlistdir = os.listdir('D:/python/program') print(curlistdir) # ['A.txt', 'B.txt', 'file.py', 'file2.py']
|
3.创建目录(多级目录)
1 2
| import os os.makedirs('E:/python/dir1/dir2') # 返回为None
|
4.删除一个文件
1 2
| import os os.remove('D:/python/program/A.txt') # 返回为None
|
5.删除单个目录
1 2
| import os os.rmdir('D:/python/dir1/dir2') # 返回为None
|
6.修改文件名或者一个目录名
1 2
| import os os.rename('D:/python/program/B.txt','D:/python/program/A.txt')
|
2.os.path函数使用
1.去掉路径得到文件名
1 2 3
| import os filename = os.path.basename('D:/python/program/A.txt') print(filename)
|
2.去掉文件名得到路径
1 2 3
| import os filedir = os.path.dirname('D:/python/program/A.txt') print(filedir) #D:/python/program
|
3.取得一个文件的后缀名
1 2 3
| import os splitext = os.path.splitext('D:/python/program/A.txt') print(splitext[1]) # 得到的是一个元组 使用tuple[1]取得.txt
|
4.判断文件或者目录是否存在
1 2 3
| import os isexists = os.path.exists('D:/python/program/A.txt') print(isexists) # True
|
5.判断指定路径是否是一个目录
1 2 3
| import os isdir = os.path.isdir('D:/python/program') print(isdir) # True
|
6.判断指定路径是否是一个文件
1 2 3
| import os isfile = os.path.isfile('D:/python/program/A.txt') print(isfile) # True
|
3.pickle模块
把数据以二进制的形式保存在指定的路径下;读取指定路径下的二进制文件。
1.数据以二进制存储在指定路径下
1 2 3 4 5
| import pickle mylist = [1,1.5,'pthon',(1,2,3)] picklefile = open('D:/python/program/myfile.pk','wb') pickle.dump(mylist,picklefile) picklefile.close()
|
2.读取指定目录下的二进制文件
1 2 3 4
| import pickle picklefile = open('D:/python/program/myfile.pk','rb') mylist2 = pickle.load(picklefile) print(mylist2 )
|
4.练习题
打印出指定目录下所有文件的路径
1 2 3 4 5 6 7 8 9 10 11
| import os def printFile(path): for item in os.listdir(path): filePath = os.path.join( path, item) if os.path.isfile(filePath): print(filePath) elif os.path.isdir(filePath): printFile(filePath) printFile('D:/python/program')
|