我的任务是创建以下GUID:
Java中的代码应该是这样的:
GUID ==> java.util.UUID.nameUUIDFromBytes(username.getBytes());
我想在用户名下进行相同的计算,并在Python中接收相同的GUID!
我做了以下但没有设法获得相同的GUID:
def compute_guid_by_username(username):
bytes = get_bytes(username)
class NULL_NAMESPACE:
bytes = b''
guid = uuid.uuid3(NULL_NAMESPACE, bytes)
return guid
请帮忙。
答案 0 :(得分:1)
我认为它与' get_bytes'有关。功能。当我在没有那个位的情况下运行你的代码时,它运行得很好。
没有' get_bytes'功能:
import uuid
def generate_guid(username):
class NULL_NAMESPACE:
bytes = b''
guid = uuid.uuid3(NULL_NAMESPACE, username.encode('utf-8'))
return guid
尝试一下:
In [1]: from guids import generate_guid
In [2]: generate_guid('bob')
Out[2]: UUID('9f9d51bc-70ef-31ca-9c14-f307980a29d8')
In [3]: generate_guid('bob')
Out[3]: UUID('9f9d51bc-70ef-31ca-9c14-f307980a29d8')
答案 1 :(得分:0)
以下代码为我工作 -
import uuid;
def generate_guid(username):
class NULL_NAMESPACE:
bytes = b''
guid = uuid.uuid3(NULL_NAMESPACE, username);
return guid
感谢, 穆尔蒂