我需要驗證UUID的列表以及確定版本。例如,使用h ttps://www.beautifyconverter.com/uuid-validator.php並輸入25CCCA6F-1568-473E-BFED-EC08C31532C6,我可以確定它是有效的和版本4.我從https://www.snip2code.com/Snippet/12614/Validating-a-uuid4-with-Python-和How to determine if a string is a valid v4 UUID?可以看出,UUID模塊可以一次驗證一個,或者測試一個特定的版本,但不確定UUID是否會測試所有4個版本並返回版本。如何驗證UUID的列表並返回UUID版本?
2
A
回答
0
def validate_uuid4(uuid_string):
try:
val = UUID(uuid_string, version=4)
except ValueError:
# If it's a value error, then the string
# is not a valid hex code for a UUID.
return False
return True
您可以用上面的功能要經過你的UUID字符串列表,它會告訴你在列表中的特定字符串時是否有效版本4的UUID
2
這是我會怎麼迭代過可能的UUID列表並返回一個並行列表,其中包含版本號(如果有效),否則返回None
。
尤其要注意UUID
構造函數接受任何版本的UUID字符串。如果字符串有效,您可以查詢.version
成員以確定版本。
from uuid import UUID
def version_uuid(uuid):
try:
return UUID(uuid).version
except ValueError:
return None
def version_list(l):
return [version_uuid(uuid) for uuid in l]
if __name__=="__main__":
uuids = (
'0d14fbaa-8cd6-11e7-b2ed-28d244cd6e76',
'6fa459ea-ee8a-3ca4-894e-db77e160355e',
'16583cd3-8361-4fe6-a345-e1f546b86b74',
'886313e1-3b8a-5372-9b90-0c9aee199e5d',
'0d14fbaa-8cd6-11e7-b2ed-28d244cd6e7',
'6fa459ea-ee8a-3ca4-894e-db77e160355',
'16583cd3-8361-4fe6-a345-e1f546b86b7',
'886313e1-3b8a-5372-9b90-0c9aee199e5',
'481A8DE5-F0D1-E211-B425-E41F134196DA',
)
assert version_list(uuids) == [1,3,4,5,None,None,None,None,14]
相關問題
- 1. UUID返回零
- 2. 使用Laravel驗證驗證UUID
- 3. Ruby的UUID庫列表
- 4. 如何更改uuid wmic csproduct get uuid
- 5. Scalacheck總是爲任意的列表生成相同的UUID [UUID]
- 6. MySQL使用哪種版本的UUID?
- 7. 如何加入UUID與表
- 8. 在插入之前驗證UUID?
- 9. 休眠的UUID UUID類型
- 10. SqlAlchemy Mapper不返回清潔UUID
- 11. Django 1.10 UUIDField返回字符串或UUID
- 12. Eloquent模型中的UUID主鍵存儲爲uuid,但返回爲0
- 13. 如何使用UUID?
- 14. Rails的5-如何添加UUID列
- 15. 如何從節點-js中的UUID返回字符串
- 16. 如何查詢postgres的UUID
- 17. python:如何將字符串中的有效uuid轉換爲UUID?
- 18. 如何重用UUID在CQL腳本
- 19. UUID Cassandra
- 20. 與UUID
- 21. 我應該使用node-uuid還是uuid?
- 22. C的UUID庫?
- 23. CouchDB中的UUID
- 24. 將UUID與GattService列表進行比較
- 25. 如何更改ANDROID Emulator UUID?
- 26. Cassandra - 如何插入UUID
- 27. 作爲列默認SQLite UUID
- 28. 在Swift中驗證字符串是否爲有效的UUID
- 29. Beacon UUID說明
- 30. Postgres + Hibernate + Java UUID
你已經處理了最難的部分。現在去了解如何在python中循環,並且一旦爲'uuid'驗證函數找到了一個真正的布爾值,就從循環中斷開。 – Niloct