在创建和管理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)字母数字字符和任意数量的破折号组成的字符串。 例如:123ABCED123ABCEDARASB21M01avbDK93S-AB-11-cc-Ll---。 由以下字符组成的guid 1234567890ABCDEFGHJKMNPRQRSTUVWXYZL和{}未提及) 被称为“规范的”。例如:12345678ABCDEFG1123ABCEDAR。 由10个字符组成的guid表示带有附加的2个字符校验和的8个字符的guid。 校验和允许检测单字符输入错误和字符交换,以及大多数其他错误。在

性格治疗

  • -或破折号-被忽略
  • Ll或{}或{}-被视为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'

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

推荐PyPI第三方库


热门话题
java检查整数是0还是检查变量是null更好?   java Android Kotlin(初学者)使用File(),并从ACTION\u GET\u内容返回Uri   java JavaFx在“内部场景”和根场景之间切换   spring将XMLBean配置转换为java配置   java JPA HIBERNATE映射列两次(embeddedID和POJO)   c#单态模式模型在什么情况下适用?   java请求。getRemoteUser在特定时间后返回null?   spring boot中PUT api控制器的java my单元测试用例失败   java在字符串中互换地解析和替换值   java Android JNI在应用程序中检测到错误:调用JNI GetMethodID时出现挂起异常   JavaSpringDataMongo:使用非简单键持久化映射   爪哇玻璃鱼连接被拒绝   java如何在用户注册时发送特定电子邮件id的自动回复?   Java列表:实例化时和之后的赋值之间的差异