【发布时间】:2015-09-19 02:37:30
【问题描述】:
在 Python 中,您可以这样做:
L=["John","David","Susan"]
x = "John"
if x in L:
print(L.index(x))
如果我有这样的列表怎么办:
L = [["John", 1234, "California"], ["David", 5678, "Arizona"], ["Susan", 8765, "Nevada"]]
我想搜索名称“John”并找出州和 ID 号而不遍历列表的所有元素?我要寻找的是是否有类似于“if {something} in L”的东西。
我猜它会像一个记录搜索功能。我有一个列表列表,元素是固定长度列表(或元组),我想看看 Python 中是否有 O(1) 类型的搜索功能,或者我可以轻松实现的东西一步搜索(假设为 O(N),需要遍历列表中的所有元素)
【问题讨论】:
-
要明确一点 -
if x in L其中L是一个列表仍然是 O(N)