Различные guid генерируются uuid3 в Python 2 и Python 3 - PullRequest
2 голосов
/ 28 апреля 2020

Я недавно перешел на Python 3.8.2 с Python 2.7.14 и столкнулся с этой проблемой.

import uuid

name="Test"
guid = str(uuid.uuid3(uuid.NAMESPACE_DNS, str(name.encode('utf8')))).upper()
print(guid)

Python 2 возвратов

5F210EFC-8898-3B6D-BAEE-94274CD64ADB

Python 3 возвратов

E8BEDE5C-66A5-36D6-87D5-6D50D4AEA4CF

Моя функция основана на создании тех же направляющих на основе " имя ». Первый выпуск был сделан с Python 2.7.14, а следующий должен быть с Python 3.8.2.

  1. Есть ли способ, с помощью которого мы можем генерировать те же направляющие, что и Python 2 из Python 3?
  2. Почему он отличается в обеих версиях Python?

1 Ответ

1 голос
/ 28 апреля 2020

На python 3.6, похоже, работает следующее:

import uuid

name="Test"
guid = str(uuid.uuid3(uuid.NAMESPACE_DNS, name)).upper()
# 5F210EFC-8898-3B6D-BAEE-94274CD64ADB
...