您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python:如何检查项目是否已添加到集合中,而没有2x(哈希,查找)

Python:如何检查项目是否已添加到集合中,而没有2x(哈希,查找)

我认为没有内置的方法可以做到这一点。您当然可以编写自己的函数

def do_add(s, x):
  l = len(s)
  s.add(x)
  return len(s) != l

s = set()
print(do_add(s, 1))
print(do_add(s, 2))
print(do_add(s, 1))
print(do_add(s, 2))
print(do_add(s, 4))

或者,如果您更喜欢神秘的一线客:

def do_add(s, x):
  return len(s) != (s.add(x) or len(s))

(这取决于从左到右的评估顺序以及set.add()始终返回的事实None,这是错误的。)

除了所有这些,我只会考虑如果双重哈希/查找显然是性能瓶颈, 并且 如果使用函数明显更快 则考虑这样做。

python 2022/1/1 18:42:13 有289人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶