python的多库实现

py-multibase的Python项目详细描述


PY多基地

https://img.shields.io/pypi/v/py-multibase.svghttps://img.shields.io/travis/multiformats/py-multibase.svg?branch=masterhttps://codecov.io/gh/multiformats/py-multibase/branch/master/graph/badge.svgDocumentation Status

Multibasepython实现

multibase是一种协议,用于区分基本编码和其他简单字符串编码,并确保与程序接口完全兼容。

它回答了这样一个问题:给定数据d被编码成字符串s,我怎样才能知道基d是用什么编码的?

基本编码存在,因为传输有限制,使用特殊的带内序列,或者必须是人类友好的。 当系统选择要使用的基时,并不总是清楚要使用哪个基,因为在决策中有许多折衷。 multibase是为了避免程序和程序员担心哪种编码是最好的。

它解决了最大的问题:一个程序可以使用multibase在任何需要的基中获取输入或产生输出。

重要的是,这个值是自描述的,让其他程序知道它使用的是什么编码。

安装

$ pip install py-multibase

样本使用

>>># encoding a buffer>>>frommultibaseimportencode,decode>>>encode('base58btc','hello world')b'zStV1DL6CwTryKyV'>>>encode('base64','hello world')b'mGhlbGxvIHdvcmxk'>>># decoding a multibase>>>decode('mGhlbGxvIHdvcmxk')b'hello world'>>>decode(b'zStV1DL6CwTryKyV')b'hello world'>>>decode(encode('base2',b'hello world'))b'hello world'

支持的编解码器

  • 基准2
  • 基准8
  • 基准10
  • 基数16
  • 基数16
  • 基数16
  • base32hex
  • 基数32
  • 基准32Z
  • base58flickr
  • 基58BTC
  • 基数64
  • base64url

历史记录

1.0.0(2018-10-19)

  • 重新实现base32和base64的编码,因为实现有错误
  • 为所有编码添加大量测试

0.1.0(2017-09-02)

  • pypi上的第一个版本。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何定制springdata存储库方法名称?   html有没有办法将java应用程序或JApplet嵌入到网站中?   Jackson ObjectMapper将java从字符串序列化为JSON作为namevalue   java刷新JTable?   用Java程序分发用JavaDB制作的数据库   java Android如何启动新活动   当集合大小超过500.000时,java的处理速度会显著降低   在java的分层目录中的多个目录中查找相同的文件   java如何将ArrayList数据插入数据库   java如何修改此代码,使其时间复杂度为o(logn)或o(n),而不是o(n^2)   java面板(SimplePanel)中仅显示图像的前1/3(大约),   jakarta ee Java Bean和企业Java Bean之间的区别?   创建AWS Cloudfront自签名URL(java sdk)时出现amazon web服务错误   基于Jersey和Jackson查询参数的java动态属性过滤