最近我遇到了一件令我困惑的事情。我比较了一些代码 发现它们检查一个字符串是否在某个集合中的方法都不一样。我的意思是这样的。
第一段:
a = "+"
if a in "+-*/":
print("yes")
第二段:
a = "+"
if a in ["+", "-", "*", "/"]:
print("yes")
我应该用哪个?我的意思是说,哪一个更符合python的要求?
时间复杂度是一样的,所以无论哪种都可以,而且是sameeextremely similar的速度。
如果你想要更好的东西
a = "+"
if a in {"+", "-", "*", "/"}:
print("yes")
这将在一个集合中搜索 "+",由于集合有固定的查找时间,它将比搜索一个列表或字符串稍快一些。