一、os.makedirs()
os.makedirs() 方法用于递归创建目录。像 mkdir(), 但创建的所有intermediate-level文件夹需要包含子目录。
import os
path_01 = \'Test\\path_01\\path_02\\path_03\'
try:
os.mkdir(path_01)
print(\'第一次创建成功!\')
except:
print(\'第一次创建失败!\')
try:
os.makedirs(path_01)
print(\'第二次创建成功!\')
except:
print(\'第二次创建失败!\')
#结果:第一次创建失败!
第二次创建成功!
os.mkdir() 创建路径中的最后一级目录,即:只创建path_03目录,而如果之前的目录不存在并且也需要创建的话,就会报错。
os.makedirs()创建多层目录,即:Test,path_01,path_02,path_03如果都不存在的话,会自动创建,但是如果path_03也就是最后一级目录
路径创建 eg:
import os path = \'d/test1/makefile/two\' #path =\'d\\test1\\makefile\\two\' 转义方法 os.makedirs(path,mode=0o770) #mode权限模式 print(\'路径被创建\')
循环创建eg:
for i in range(5):
path=\'cest\'+\'\\\'+"ciliylist[%d]"%i
if not os.path.exists(path):
os.makedirs(path)
file=open(path+\'/a.txt\',\'w\',encoding=\'utf-8\')
file.write(\'成功创建路径%d\'%i)
file.close()
二、文件目录操作
#!/usr/bin/python
# encoding=utf-8
# Filename: dir_file.py
import os
import shutil
#操作目录
opDir=r\'D:\test\'
#创建目录
if not os.path.exists(opDir):
os.mkdir(opDir)
#更改当前目录到opDir
os.chdir(opDir)
#显示当前目录
print(\'当前目录是:%s\'%os.getcwd())
#创建多级目录
if not os.path.exists(opDir+os.sep+"aa"+os.sep+"bb"):
os.makedirs(opDir+os.sep+"aa"+os.sep+"bb")
#在当前目录下创建文件
if not os.path.exists(\'test.txt\'):
f=open(\'test.txt\',"w")
f.write("write something to file")
f.close()
#读取文件内容
print \'文件内容如下:\'
if os.path.exists(\'test.txt\'):
f=open(\'test.txt\')
while True:
line = f.readline()
if len(line) == 0: # Zero length indicates EOF
break
print(line)
f.close()
#打印一个空行
print(\'\n当前目录下的文件列表如下:\')
#循环当前目录下的文件列表
lfile=os.listdir(os.getcwd())
for sfileName in lfile:
if os.path.isdir(sfileName):
print(\'目录%s\' % sfileName)
elif os.path.isfile(sfileName):
print(\'文件%s\' % sfileName)
#删除目录(只能删除空目录)
if os.path.exists("dd"):
os.rmdir("dd")
#删除文件
if os.path.exists("aa"):
shutil.rmtree("aa")
#修改目录或文件的名称
if os.path.exists("test"):
os.rename("test", "test2")
#移动目录
if os.path.exists(r\'D:\test\'):
shutil.move(r\'D:\test\',r\'E:\test\')