【发布时间】:2020-08-06 03:25:59
【问题描述】:
我最近遇到了一件让我感到困惑的事情:我在比较一段代码时发现它们都检查了一个字符串是否在某个集合中不同。这就是我的意思:
第一个:
a = "+"
if a in "+-*/":
print("yes")
第二个:
a = "+"
if a in ["+", "-", "*", "/"]:
print("yes")
我应该使用哪一个?我的意思是哪个更pythonic?
【问题讨论】:
-
查看Page 了解复杂性的完整列表。下面提供的答案实际上比
O(1)更快,而不是O(n)。 -
@TheLazyScripter 好吧,构建这些数据结构中的任何一个来测试一次成员身份仍然是 O(N)