• [Python] 目录和文件操作


      在Linux系统下用Python写脚本,肯定不能避免各种与目录和文件夹有关的操作。为了以后方便查阅,简单地针对Python中与目录和文件夹有关的操作进行汇总。

      需要实现导入的模块为: import os

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

      path=os.getcwd()

      在这里引用一个比较好的例子,来源于:牛皮糖的旅程

      我们将abc.py放入A文件夹。并且希望不管将A文件夹放在硬盘的哪个位置,都可以在A文件夹内生成一个新文件夹。且文件夹的名字根据时间自动生成。

    import os
    import time
    folder = time.strftime(r"%Y-%m-%d_%H-%M-%S",time.localtime())
    os.makedirs(r'%s/%s'%(os.getcwd(),folder))

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

      os.listdir()

    3. 判断一个路径(目录或文件)是否存在:

      b = os.path.exists("路径")——返回值b:True 或 False

    4. 判断一个路径是否文件:

      b = os.path.isfile("路径")——返回值b:True 或 False

    5. 判断一个路径是否目录:

      b = os.path.isdir("路径")——返回值b: True 或 False

    6. 创建子目录:

      os.makedirs(path)——path是"要创建的子目录"

      调用有可能失败,可能的原因是:

      (1) path 已存在时(不管是文件还是文件夹);

      (2) 驱动器不存在;

      (3) 磁盘已满;

      (4)磁盘是只读的或没有写权限。

    7. 删除子目录:

      os.rmdir(path)——path: "要删除的子目录"

      产生异常的可能原因:

      (1) path 不存在;

      (2) path 子目录中有文件或下级子目录;

      (3) 没有操作权限或只读。

      shutil.rmtree(path)——空目录、有内容的目录都可以删

    8. 删除文件:

      os.remove(filename)——filename: "要删除的文件名"

      产生异常的可能原因:

      (1) filename 不存在;

      (2) 对filename文件,没有操作权限或只读。

    9. 文件改名:

      os.name(oldfileName, newFilename)

      产生异常的原因:

      (1) oldfilename 旧文件名不存在;

      (2) newFilename 新文件已经存在时,需要先删除 newFilename 文件。

    10. 获取文件大小:

      os.path.getsize(filename)

    11. 将一个路径名分解为目录名和文件名两部分:

      fpath , fname = os.path.split("路径")

      例如:

        a, b = os.path.split( "c:\123\456\test.txt" )

        print a

        print b

        显示:

        c:123456

        test.txt

    12. 分解文件名的扩展名:

      fpathandname , fext = os.path.splitext("路径")

      例如:

        a, b = os.path.splitext( "c:\123\456\test.txt" )

        print a

        print b

      显示:

        c:123456 est

        .txt

  • 相关阅读:
    每日英语:Here's Why You Won't Finish This Article
    每日英语:'Still Out Of Work?' How To Handle Holiday Small Talk
    每日英语:How to Spend Christmas in Asia
    每日英语:Losing It at the Movies: Silly Beats Sober in China's Box Office
    每日英语:How Do iPhone Photos Impact Our Experience?
    一种使用CSS固定表头和列的方法
    一个asp.net中使用的flash展示控件
    gridview中cell的选择和编辑
    asp.net 2.0中的profile对象简介
    gridview中使用方向键标记选中行
  • 原文地址:https://www.cnblogs.com/maybe2030/p/4564980.html
Copyright © 2020-2023  润新知