在创建和管理openxpduuid时使用的一个公共函数库,openxpduuid是一个用于产品声明(包括hpd和epd)的通用、全局唯一的名称空间(uuid),用于帮助用户查找与单个产品相关的所有环境和健康信息。
open-xpd-uuid的Python项目详细描述
打开xpd uuid库
创建和管理openxpd uuid时使用的通用函数库, 用于产品声明(包括HPD和EPD)的通用全局唯一名称空间(uuid), 帮助用户查找与单个产品相关的所有环境和健康信息。在
开放xPD UUID(短可读guid)
open-xpd-uuid
是由8个或10个(8+2)字母数字字符和任意数量的破折号组成的字符串。
例如:123ABCED
,123ABCEDAR
,ASB21M01
,avbDK93S
,-AB-11-cc-Ll---
。
由以下字符组成的guid 1234567890ABCDEFGHJKMNPRQRSTUVWXYZ
(L
和{12345678
,ABCDEFG1
,123ABCEDAR
。
由10个字符组成的guid表示带有附加的2个字符校验和的8个字符的guid。
校验和允许检测单字符输入错误和字符交换,以及大多数其他错误。在
性格治疗
-
或破折号-被忽略L
或l
或{}或{ }-被视为 1
O
或{}-被视为 0
(零)
安装
pip install open-xpd-uuid-lib
支持的版本
该库支持python 3.6
及更高版本。在
使用
生成短可读GUID
>>> fromcqdimportopen_xpd_uuid>>> open_xpd_uuid.generate()'JKGEE5PN'
生成以特定字符集(前缀)开头的短可读GUID
^{pr2}$清理短可读guid
使用sanitize
将不明确字符(0,o,o,1,L,L,I,I)替换为正确的字符,并删除破折号(-)。
此函数用于将从用户接收的guid转换为规范guid。在
例如:as-b2-lm-oL
->;ASB21M01
>>> fromcqdimportopen_xpd_uuid>>> open_xpd_uuid.sanitize('as-b2-lm-oL')'ASB21M01'
验证短可读GUID
使用validate
验证短可读GUID,并在GUID无效时获取错误描述。
validate
只接受“规范”guid:使用sanitize
函数使它们成为“规范的”。在
>>> fromcqdimportopen_xpd_uuid>>> sanitized_guid=open_xpd_uuid.sanitize('as-b2-lm-oL')>>> sanitized_guid'ASB21M01'>>> open_xpd_uuid.validate(sanitized_guid)# no exception - the `sanitized_guid` is valid>>> try:... open_xpd_uuid.validate('as-b2-lm-oL')... exceptopen_xpd_uuid.GuidValidationErrorase:... print(e)... `guid` length must be 8 characters long
生成和使用校验和
>>> fromcqdimportopen_xpd_uuid>>> guid=open_xpd_uuid.generate()'JKGEE5PN'>>> checksum=open_xpd_uuid.checksum(guid)'ME'>>> guid_with_checksum=guid+checksum'JKGEE5PNME'>>> short_link='cqd.io/e/'+guid_with_checksum'cqd.io/e/JKGEE5PNME'
- 项目
标签: