• 【Python零基础入门篇 · 28】:os模块的使用


    os模块


    os模块中的命令

    命令作用
    os.getcwd()获取当前工作目录,即当前程序文件所在的文件夹
    os.chdir(path)改变当前目录,需传递新的路径
    os.listdir(path)返回指定路径下的文件名称列表
    os.mkdir(path)在某个路径下创建文件夹,找不到相应的路径则会报错
    os.makedirs(path)递归创建文件夹,找不到路径时自动创建
    os.rmdir(path)删除文件夹
    os.remove(path)删除文件
    os.removedirs(path)递归删除文件夹,必须都是空目录,如果不是空文件夹将会报错
    os.rename(旧名,新名)文件或文件夹重命名
    os.path.split(path)将文件路径分割成文件夹和文件名,并将其作为二元组返回
    os.path.abspath(path)返回path规范化的绝对路径
    os.path.join(path1,path2,……)将多个路径组合后返回,例如将文件夹和里面的文件组合得到绝对路径
    os.path.getsize(path)返回文件大小,以字节为单位
    os.path.isfile(path)判断所给的路径是否是一个文件,是则返回True,否则返回False
    os.path.isdir(path)判断所给的路径是否是一个文件夹,是则返回True,否则返回False

    常用命令的代码演示

    os.getcwd()

    获取当前工作目录,即当前程序文件所在的文件夹。
    在这里插入图片描述

    os.chdir(path)、os.listdir(path)

    os.chdir(path):改变当前目录,需传递新的路径。
    os.listdir(path):返回指定路径下的文件名称列表。

    • 例:在F盘下创建一个名为“文件操作”的文件夹,并在文件夹里创建几个工作文件
      在这里插入图片描述
      在这里插入图片描述
    os.mkdir(path)、os.makedirs(path)

    os.mkdir(path):在某个路径下创建文件夹,找不到相应的路径则会报错。
    os.makedirs(path):递归创建文件夹,找不到路径时自动创建。
    在这里插入图片描述
    在这里插入图片描述

    os.rename(旧名,新名)

    文件或文件夹重命名
    在这里插入图片描述

    举例:查找文件夹下所有满足要求的文件

    • 例如:查找“F:\文件操作"文件夹下所有以xls或xlsx为后缀名的文件
      在这里插入图片描述
      在这里插入图片描述
    源代码
    import os
    def travel(path):
        if os.path.isfile(path): # 判断所给的路径是否是文件,如果是文件则结束代码
            return
        file_list = os.listdir(path) # 获取文件夹中的所有文件名
        for cur_file in file_list:
            temp_path = os.path.join(path, cur_file) # 将文件夹和文件名组合在一起
            if os.path.isfile(temp_path):
                if temp_path.endswith("xls") or temp_path.endswith("xlsx"): # 判断文件是否以"xls"、“xlsx”结尾,是则输出,不是则进行下一循环
                    print(temp_path)
                    continue
            if os.path.isdir(temp_path): # 判断路径是否是一个文件夹,是则递归调用
                travel(temp_path)
     
    travel('F:/文件操作')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
  • 相关阅读:
    CAP+BASE
    token正确不报错,token失效后却出现报跨域错误
    打patch 命令
    MyBatis中#{}和${}的区别
    C. Dolce Vita Educational Codeforces Round 127 (Rated for Div. 2)
    1.NoSQL之Redis配置与基础命令
    uniapp Android 离线打包之未配置appkey或配置错误
    JDBC中setTransactionIsolation
    Springmvc接收请求参数
    记一次 .NET 某工控数据采集平台 线程数 爆高分析
  • 原文地址:https://blog.csdn.net/Oh_Python/article/details/126812766