PythonでStringからuuid.UUIDへの型変換方法
今回はPythonでString文字列からuuid.UUIDへの型変換の方法についてご紹介いたします。
ちなみにuuid.UUIDからStringへの変換方法につきましてはこちらの記事で解説しております。
Pythonでuuid.UUIDからStringへの型変換方法
Python3で動作確認を行いました。
PythonでStringからuuid.UUIDへの型変換方法
PythonでString型のuuidをuuid.UUIDの型に変換させたいときがあると思います。
結論を言うと、uuid.UUID()の関数でString型からuuid.UUIDの型に変換させることが可能です。
1 2 3 4 |
>>> import uuid >>> testStr = '09b17843-9547-4987-89e9-111b05eca509' >>> uuid.UUID(testStr) UUID('09b17843-9547-4987-89e9-111b05eca509') |
しかし上記では注意点があり、String型の文字列がきちんとuuidの標準に則っていれば変換が成功しますが、uuidの標準に則っていなければuuid.UUIDへの変換が失敗します。
1 2 3 4 5 6 7 |
>>> testStr = '09b17843' >>> uuid.UUID(testStr) Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/uuid.py", line 160, in __init__ raise ValueError('badly formed hexadecimal UUID string') ValueError: badly formed hexadecimal UUID string |
よって、String型の文字列からuuid.UUIDに変換する場合はtry exceptで括ってあげることを推奨します。
1 2 3 4 5 6 7 8 |
>>> import uuid >>> testStr = '09b17843-9547-4987-89e9-111b05eca509' >>> try: ... uuid.UUID(testStr) ... except: ... pass ... UUID('09b17843-9547-4987-89e9-111b05eca509') |
終わりに
今回はPythonでString文字列からuuid.UUIDへの型変換の方法についてご紹介いたしました。
ディスカッション
コメント一覧
まだ、コメントがありません