【问题标题】:python: convert UUID to a string which is a C unsigned char[16] initializerpython:将 UUID 转换为 C 无符号字符 [16] 初始化器的字符串
【发布时间】:2010-01-22 18:24:33
【问题描述】:

(如果您对动机感到好奇:这将用于scons 构建以生成包含 GUID 的 C 文件)

我找到了关于generating a GUID in python 的问题。但我对python编程知之甚少。有人可以帮我将其转换为表单的字符串

"{0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**, 0x**}"

** 用 2 位十六进制形式的 GUID 字节填充在哪里?

def getInitializer(someUUID):
    hexByteList = [??? for b in someUUID.bytes]
    return '{'+(', '.join(hexByteList))+'}'

我不知道“???”以上。

【问题讨论】:

    标签: python


    【解决方案1】:
    hex(ord(b))
    

    ...

    【讨论】:

    • (如果我想通过将 0-15 的字节值打印为 0x00、0x01 等而不是 0x0、0x1 等来确保字符串具有恒定长度怎么办?)
    • 我认为"%#04x" % ord(b) 会这样做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多