にカンマ区切りの文字列を分割し、私のようなものありませんいくつかのコードがあります。パイソン:直接セット
if string in comma_delimited_string.split(','):
return True
This websiteはセットとdictsとメンバーシップのテストは非常に速く、そのリストやタプルであると述べています。 set(comma_delimited_string.split(','))
を実行すると、リストがセットに変換される前にリストが作成されているため、スピードが向上しないことがわかります(少なくとも、タイムアウトすると遅くなるようです)。
私は(私のコードへの真のメリットよりも、主に好奇心から)、その後、思っていた、comma_delimited_string.split(',')
のと同じ効果を達成するための方法があるが、直接セットを作成し、リストの代わりに、スピードアップのつもりで上記の操作は?
@Bakuriu返事ありがとうございます - 私の場合は、曖昧な文書番号(例えば、文書が「10」と「103」の場合があります)を見ているので、純粋な 'string in comma_delimited_string'全く適用できません。ですから、カンマで区切られた文字列を '.split'のようにCに直接書くことができるでしょうか? ....いつでもすぐにやっていない。 – dieggsy
@therockmandolinistはい、それは私が言っていることです。 'split'のコードをコピーして貼り付け、リストの代わりにセットを使う必要があります。そのチェックができるだけ速くなければならない場合にのみ、私はそれを行うことが大変面倒です。 – Bakuriu