08-IO操作

处理文件

os.makedirs("dir1/dir2"):
    创建目录。
    可创建多层递归目录。
    
    import os
    os.makedirs("a/b")
    但是:如果当前路径中,已经有了要创建的目录的话,再执行上述代码会直接报错。

os.mkdir("dir3"):
    创建一个单独的文件夹。
    该函数不能递归创建文件夹。
    
    import os 
    os.mkdir("d")

os.rmdir('dirname'):
    删除单级空目录。
    若目录不为空则无法删除,报错;相当于shell中rmdir dirname。
    如果要删除的文件不存在,也会报错。
    
    import os 
    os.rmdir("d")

os.removedirs('dirname1'):
    若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推。

os.getcwd():
    获取当前的工作目录。
    注意:也是值当前执行python脚本的工作目录。

os.chdir("dirname"):
    切换当前工作目录。
    切换到传入的目录下。

os.listdir("dirname"):
    列出指定目录下的所有目录和子文件。
    
os.remove("dirname"):
    删除一个文件。
    只能删文件,不能删文件夹。

os.rename("oldname","newname"):
    给文件重命名。

********************************************************************************************************

os.stat("path/filename"):
    获取文件或者目录的信息。

os.system("bash command"):
    执行的是字符串数据类型的命令行代码。
    通过Python代码,调用电脑上的系统接口,来运行cmd命令。并直接执行,没有返回值。
    它适合做执行操作,不适合做查看。

os.popen("command"):
    类似os.system("bash command")命令,执行操作系统命令。它有返回值,返回值是一个内存地址。
    但是该函数适合做查看操作,获取到返回值可以通过read()命令获取数据。
    注意:当前在哪个目录下执行这个文件,就获取那个目录下的数据。
    
    ret = os.popen("dir")
    print(ret)   # <os._wrap_close object at 0x0000023D391F8358>
    print(ret.read())  
    """
    驱动器 F 中的卷没有标签。
    卷的序列号是 48E9-4EE0
    
    F:\Python03\python基础\01-基本数据类型和循环结构\15-模块\05-os模块 的目录
    
    2019/07/24  09:57    <DIR>          .
    2019/07/24  09:57    <DIR>          ..
    2019/07/24  09:57               256 01-os模块.py
    2019/07/23  14:52                 0 __init__.py
                   2 个文件            256 字节
                   2 个目录 489,694,855,168 可用字节
    """

处理文件路径

os.path.abspath("dir"):
    返回当前文件的绝对路径。
    但是只能是能够找到的相对路径中,返回绝对路径。

os.paht.join(path, name):
    拼接路径。将path和name拼接成一个绝对路径。

os.path.split():
    将一个路径分为两部分,最后一部分是当前路径的文件或是文件夹名称。

os.path.dirname(path):
    返回一个路径的除了最后文件名或是文件夹名的其余部分。
    返回当前文件的上一级文件目录。

os.path.basename(path):
    返回一个文件或是文件夹的名字

os.path.exists(path):
    判断路径是否存在。
    如果路径存在则返回True,如果路径不存在则返回False

os.path.isabs(path):
    判断一个路径是否是绝对路径。

os.path.isdir(path):
    判断路径是否是文件夹。

os.path.isfile(path):
    判断路径是否是文件。

os.path.getsize(path):
    获取文件的大小。
    每次获取都是最少4096字节,并且是是以4096的倍数增加。

os.stat(path).stz_size:
    使用这个方法也可以获取到文件或者文件夹的字节大小。
posted @ 2020-06-08 22:26  康帅博丶  阅读(79)  评论(0编辑  收藏  举报