os模块

import os
# 工作路径相关
    # os.getcwd() # 获取当前工作路径。在哪个路径下运行的py文件,就是什么路径
    # os.chdir() 改变当前工作路径
    # os.curdir 返回当前路径 一直返回 .
    # os.pardir 返回父级路径 一直返回 ..

# 文件操作相关
    # os.rename('oldname','newname') 重命名文件/文件夹
    # os.remove(文件名) 删除一个文件 不能删除目录
    # os.mkdir(文件夹名) #创建一个单级目录
    # os.makedirs(路径,exist_ok=False) # 创建多级目录 exist_ok=False的时候,如果要创建的目录已经存在,会报错。如果为True不会报错,也不重新创建
    # os.rmdir(文件夹) # 删除文件夹,不能删除非空文件夹。只能删除一级目录
    # os.removedirs(路径) # 删除多级目录,不能删除非空文件夹
    # os.listdir()  # 查看路径下的文件和文件夹
    # os.stat()  # 查看文件相关信息
        #         '''
        #         os.stat_result(
        #             st_mode=33188,       inode 保护模式
        #             st_ino=1055816,      inode 节点号
        #             st_dev=64769,        inode 驻留的设备
        #             st_nlink=1,          inode 连接数
        #             st_uid=0,            所有者用户id
        #             st_gid=0,            所有者组id
        #             st_size=919,         普通文件以字节为单位的大小;包含等待某些特殊文件的数据
        #             st_atime=1560517597, 上次访问时间
        #             st_mtime=1560517597, 最后一次修改时间
        #             st_ctime=1560517597  由操作系统报告的'ctime'。在某些系统上(如Unix)是最新元组数据更改的时间,在其他系统上(如Windows)是创建时间
        #             )

        #         '''

# 系统差异
    # os.sep 当前操作系统的目录分隔符 (windows ) (linux /) 
    # os.linesep 当前操作系统的行终止符 (windows 
) (linux 
) 
    # os.pathsep 用于分割文件路径的字符串 (windows ;) (linux :) 在环境变量中可以看见
    # os.name    当前使用的平台 (windows nt) (linux posix) 

# 执行操作系统命令 
    # os.system(shell命令) # 拿不到结果
    # os.popen() # 可以使用read() 方法获取结果
    # os.environ # 查看系统环境变量



# os.path系列
    # os.path.abspath(path) 返回一个规范化的绝对路径
    # os.path.split(path)   传入一个路径,会将最后一个/后的内容跟前面的内容分开,放入一个元组,/home/Jupyter/3.模块/1.txt --》('/home/Jupyter/3.模块', '1.txt')
    # os.path.dirname(path) 传入 /home/Jupyter/3.模块/1.txt 返回 /home/Jupyter/3.模块
    # os.path.basename(path) 传入 /home/Jupyter/3.模块/1.txt  返回 1.txt
    # os.path.exists(path) 判断路径是否存在,存在返回Trut 不存在返回False
    # os.path.isabs(path) 判断路径是否是绝对路径
    # os.path.isfile(path) 判断路径是否是文件
    # os.path.isdir(path) 判断路径是否是目录
    # os.path.join() 根据平台的分隔符,做路径的拼接 os.path.join(/home,aaa,bbb,ccc) --> /home/aaa/bbb/ccc
    # os.path.getatime(path) 返回文件或者目录的最后访问时间
    # os.path.getmtime(path) 返回文件或者目录的最后修改时间
    # os.path.getsize()返回文件或者目录的大小单位B(字节)/如果是目录返回的都是4096,因为操作系统规定文件夹大小都是4096.里面是否有文件,文件大小是多少他不管
import os
def get_size(path):
    path = os.path.abspath(path)
    size = 0
    if os.path.isfile(path):
       
        return os.path.getsize(path)
    else:
        lst = os.listdir(path)

        if not lst:
            return 0
        for name in lst:
            size += get_size(os.path.join(path,name))
                
    return size
        
print(get_size('/bin'))   
计算指定路径下的文件大小
原文地址:https://www.cnblogs.com/wtil/p/11093622.html