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.3.2022.6.27.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

fileblock-2.0.3.2022.6.27-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

Details for the file fileblock-2.0.3.2022.6.27.tar.gz.

File metadata

  • Download URL: fileblock-2.0.3.2022.6.27.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/35.0 requests/2.25.1 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.1 keyring/23.1.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for fileblock-2.0.3.2022.6.27.tar.gz
Algorithm Hash digest
SHA256 e7d738fc746617e827379ab74b76dfb0644a32c36c60cc2481a05f034b928221
MD5 dcca5b345369345c8ed0e755f6a00ffe
BLAKE2b-256 c32b124543abd476dc5f8be847a16eebaead15c4a140f72b98900ff9305cf79e

See more details on using hashes here.

File details

Details for the file fileblock-2.0.3.2022.6.27-py3-none-any.whl.

File metadata

  • Download URL: fileblock-2.0.3.2022.6.27-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/35.0 requests/2.25.1 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.1 keyring/23.1.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

File hashes

Hashes for fileblock-2.0.3.2022.6.27-py3-none-any.whl
Algorithm Hash digest
SHA256 7aa3fd2adb5741ee370781fc395e017ac2038e0509f8e849b150cb96dbb4c22e
MD5 cae8b8d3f459922eef17f9c154e1ae2c
BLAKE2b-256 bfbe4781f66359e96d9230aaa0c0f9644c3699295d7f9d5a400f8a691e12407b

See more details on using hashes here.

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