python3笔记十九:os和ospath模块

一:学习内容

  • os模块
  • ospath模块
  • 获取指定目录下所有文件和目录

 

二:os模块

包含了普遍的操作系统功能,需要导入该模块:import os

当前所在位置目录结构为:

 

 

  • 目录操作

1.获取当前目录-相对路径
print(os.curdir)

 

2.获取当前工作目录,即当前py脚本所在目录-绝对路径
print(os.getcwd())

 

3.以列表的形式返回指定目录下的所有的文件(包括目录),只拿到最上层

print(os.listdir(r"F:\python\test02"))

 

4.在当前目录下创建新目录,支持相对路径和绝对路径

os.mkdir("test002")

 

5.在当前目录下删除目录
os.rmdir("test002")  #没有文件删除会报错

 

  • 文件操作

1.获取文件属性
print(os.stat("test02.txt"))

 

2.重命名文件
os.rename("test02.txt","python_test.txt")

 

3.删除普通文件

os.remove("python_test.txt")

 

三:ospath模块

包含了普遍的操作系统功能,需要导入该模块:import os

当前所在位置目录结构为:

 

1.查看当前的绝对路径
print(os.path.abspath("."))
print(os.path.abspath("./test002"))

 

2.拼接路径
p1 = r"F:\python\test02"
p2 = "python_test.txt"
#注意:参数2开始的地方不要有斜杠,即python_test.txt的p前面不要有斜杠
print(os.path.join(p1,p2))

 

3.拆分路径
p5 = r"F:\python\test02"
#把最后的路径单独拆成一个
print(os.path.split(p5))

 

4.获取扩展名 .txt
p6 = r"F:\python\test02\python02.py"
print(os.path.splitext(p6))

 

5.判断是否是目录,目录需要真实存在
p7 = r"F:\python\test"
print(os.path.isdir(p7))

 

6.判断是否是文件,文件需要真实存在
p8 = r"F:\python\test02\python02.py"
print(os.path.isfile(p8))

 

7.判断路径(目录或文件)是否存在
p9 = r"F:\python\test02"
print(os.path.exists(p9))

p9 = r"F:\python\test02\python02.py"
print(os.path.exists(p9))

 

8.获取文件大小,按字节数统计,一个汉字2个字节
p10 = r"F:\python\test02\python_test.txt"
print(os.path.getsize(p10))

 

9.获取文件目录
p11 = r"F:\python\test02\python_test.txt"
print(os.path.dirname(p11))

 

10.获取文件名
p12 = r"F:\python\test02\python_test.txt"
print(os.path.basename(p12))

 

四:获取指定目录下所有文件和目录

包含了普遍的操作系统功能,需要导入该模块:import os

当前所在位置目录结构为:

代码如下:

import os

def getAllDir(path,sp=""):
    #处理当前目录下所有文件
    dirList = os.listdir(path)
    sp += "  "
    #处理每个文件
    for fileName in dirList:
        fileAbsPath = os.path.join(path,fileName)
        if os.path.isdir(fileAbsPath):
            print(sp + "目录为:", fileName)
            getAllDir(fileAbsPath,sp)
        else:
            print(sp + "文件为:",fileName)

path = r"F:\python"
getAllDir(path)

运行结果为:

posted @ 2019-09-11 15:25  秒秒开心  阅读(661)  评论(0编辑  收藏  举报