IANAサブタグを解析し(カスケード文字列分割、pythonicの方法を参照)、8600タグのリストを作成しました。
tags= ['aa',
'ab',
'ae',
'af',
'ak',
'am',
'an',
'ar',
# ...
たとえば、リストにあるかどうかを確認したいと思いmytag="ro"
ます。これを行うための最速の方法は何ですか。
最初の解決策:
if mytag in tags:
print "found"
2番目の解決策:
if mytag in Set(tags):
print "found"
3番目の解決策:リストを次のような大きな文字列に変換してから、'|aa|ab|ae|af|ak|am|an|ar|...'
文字列が別の文字列に含まれているかどうかを確認します。
tags = '|aa|ab|ae|af|ak|am|an|ar|...'
if mytag in tags:
print "found"
別の方法はありますか?これは最も速いですが、これはすでに測定されていますか?そうでない場合、どのように自分自身をベンチマークできますか(リストからランダムな要素を取得するか、最後の要素を取得してテストする必要があります、誰かが「クロノメーター」のPythonコードを提供できますか)?