Skip to main content

simplify file processing

Project description

File Block

Programe

简化文件处理 - simplify file processing

Installing from pip

pip 安装

pip install fileblock

清华源安装

pip install fileblock -i https://pypi.tuna.tsinghua.edu.cn/simple

How to use

import fileblock as fb
from fileblock import Block, Directory

Block

Block()

file_block = Block("./") # 创建一个Block
参数 类型 返回值 描述
name string None 创建 block 的逻辑位置
Tips:
  @path 不一定是真实存在的文件或者文件夹路径

block.sub_block()

参数 类型 返回值 描述
path string Block 相对于 block 的相对路径

block.append()

参数 类型 描述
name string 相对于 block 的相对路径
type btype.FILE / btype.DIR 需要添加的节点类型

返回新生成节点的Block对象

Tips:
    当type == FILE时,若name形如x1/x2, 则会新建x1文件夹,返回的是x2的Block对象,而不是x1

block.join_path()

参数 类型 描述
path string 需要拼接的文件/文件夹路径

返回拼接后的路径

block.remove()

说明:

如果该 block 对象是真实存在的文件/文件夹, 则从磁盘上永久删除该文件/文件夹

block.moveTo()

参数 类型 描述
target Block 一个类型为Dir的Block对象

如果block存在,则会把其中的文件与文件夹移动到target对应的文件夹内

block.copyTo()

参数 类型 描述
target Block 一个类型为Dir的Block对象

把 Block 及其 Children 都拷贝如 target 中

block.cut()

参数 类型 描述
rates int/float 需要划分的比重

🌰举个例子:

文件夹里如果有n个文件,想要划分成7:3,那参数就是7, 3,也就是block.cut(7, 3)

如果想要分成1:2:3,那就block.cut(1, 2, 3)

返回值时一个列表,其中的元素是划分好的Children类型

block.get_file_contents()

如果block时文件,则返回该文件的bytes内容

block.leaves

Block文件树的叶子节点构成的Children集合

block.isfile

当block存在,且为文件时等于True

block.isdir

当block存在,且为文件夹时为True

block.exists

当block存在时为True

block.children

返回block对象包含的子文件与子文件夹构成的Children集合

block.btype

返回该Block对象的类型 FILE | DIR | None

Directory

directory.map()

directory.to_json()

directory.copy()

directory.shuffle()

返回打乱顺序的Directory,不改变本身内容

directory.unfold()

directory.append()

directory.extend()

directory.remove()

directory.pop()

directory.extension_filter()

super_dir_name

directory.abspaths

返回所有Block的绝对路径

License

Apache 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fileblock-2.0.1.2022.6.13.tar.gz (12.7 kB view hashes)

Uploaded Source

Built Distribution

fileblock-2.0.1.2022.6.13-py3-none-any.whl (12.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page