查找然后添加与仅添加到集合之间的性能差异是什么

What's the performance differences between lookup then add vs just adding to a set

在使用 python set() 时,查找+添加与添加之间的性能有何不同?哪个是首选?

myset = set()
 for ...
     if key not in myset:
         myset.add(key)

myset = set()
 for ...
     myset.add(key)

因为这里检查成员资格是 O(1),所以两者之间没有(真正的)性能差异,但第二个版本更加清晰。第一个只是给算法增加了不必要的复杂性。