fs.py 文件源码

python
阅读 43 收藏 0 点赞 0 评论 0

项目:libase 作者: fasionchan 项目源码 文件源码
def file_type():
    def get_nan_file_type():
        def file_type(path):
            return 'nan'
        return file_type

    def get_unix_file_type():
        file_type_map = {}
        for t in ('reg', 'dir', 'chr', 'blk', 'fifo', 'lnk', 'sock'):
            mode_name = 'S_IF%s' % (t.upper(),)
            mode = getattr(stat, mode_name, None)
            if mode is not None:
                file_type_map[mode] = t

        def file_type(path):
            return file_type_map.get(stat.S_IFMT(os.stat(path).st_mode), 'nan')

        return file_type

    S_IFMT = getattr(stat, 'S_IFMT', None)
    if S_IFMT is None:
        return get_nan_file_type()
    else:
        return get_unix_file_type()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号